Commit a5df52e4 by fangyuan

add live project

parents
# Created by .ignore support plugin (hsz.mobi)
### Java template
# Compiled class file
*.class
# xm-autotest
.idea
com.xiaomai.iml
target
test-output
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
.idea/.gitignore
.idea/.name
.idea/compiler.xml
.idea/dbnavigator.xml
.idea/encodings.xml
.idea/jarRepositories.xml
.idea/libraries/
.idea/misc.xml
.idea/modules.xml
.idea/vcs.xml
target/
test-output/
\ No newline at end of file
## xmautotest
http接口测试项目工程,完成dopost,doget 等接口请求。
### cases 存放测试代码 分模块请求
### client 存放测试基础类
### demo 存放模板测试方法
### utils 存放基础工具类
### application.properties 文件配置dubbo 配置
### config.properties 文件配置测试资源相关
### jdbc.xml 测试数据库连接池
### jdbc.properties 数据库基本信息配置
### testng.xml 配置自动化扫描测试类文件
### baseresult存放标准测试结果
### contrastresult存放请求结果与标准结果作对比
### dataprovider存放一个请求的模板化参数
### resources/ paramter.json 存放所有登录账号信息
### case 模块划分
### god ——> 教务
### money ——> 营销
### zeus ——> 家校
### cloudclass ——> 云课堂
### earth ——> 支持线
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>xmautotest</groupId>
<artifactId>com.xiaomai</artifactId>
<version>1.0-SNAPSHOT</version>
<url>http://maven.apache.org</url>
<properties>
<spring.version>4.2.3.RELEASE</spring.version>
<log4j.version>1.2.17</log4j.version>
<slf4j.version>1.7.9</slf4j.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<project.compile.encoding>UTF-8</project.compile.encoding>
</properties>
<repositories>
<repository>
<id>aliyunmaven</id>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.jiejing</groupId>
<artifactId>xm-testng</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${pom.basedir}/src/main/resources/xm-testng-1.0-SNAPSHOT.jar</systemPath>
</dependency>
<!-- https://mvnrepository.com/artifact/io.rest-assured/rest-assured -->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
<version>4.0.0</version>
<scope>compile</scope>
</dependency>
<!-- use to parse json document -->
<!-- https://mvnrepository.com/artifact/io.rest-assured/json-path -->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>json-path</artifactId>
<version>4.0.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hamcrest/java-hamcrest -->
<!-- match rules in assertion -->
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>java-hamcrest</artifactId>
<version>2.0.0.0</version>
<scope>test</scope>
</dependency>
<!--jsonassert-->
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>
<dependency>
<groupId>org.skyscreamer</groupId>
<artifactId>jsonassert</artifactId>
<version>1.5.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.11.1</version>
</dependency>
<!--引入日志相关包-->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.7.26</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-excel</artifactId>
<version>1.0.0</version>
</dependency>
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<!--spring4.2.3.RELEASE-->
<!--spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<!--/spring -->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
<exclusion>
<artifactId>commons-collections</artifactId>
<groupId>commons-collections</groupId>
</exclusion>
</exclusions>
</dependency>
<!-- 引入 okhttp 3 相关jra 包-->
<!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp -->
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.8.1</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.3.6</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpasyncclient</artifactId>
<version>4.0.2</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>4.3.6</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8.8</version>
</dependency>
<dependency>
<groupId>com.aventstack</groupId>
<artifactId>extentreports</artifactId>
<version>3.1.5</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>org.uncommons</groupId>
<artifactId>reportng</artifactId>
<version>1.1.4</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<!--lombok引入-->
<!-- <dependency>-->
<!-- <groupId>org.projectlombok</groupId>-->
<!-- <artifactId>lombok</artifactId>-->
<!-- <version>1.18.12</version>-->
<!-- </dependency>-->
<!-- Time依赖架包下载 -->
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.9.1</version>
</dependency>
<!--引入zson相关包-->
<dependency>
<groupId>link.zhangfei</groupId>
<artifactId>zson</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>22.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<!--添加插件 关联testng-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
<configuration>
<!-- <forkMode>0</forkMode>-->
<!-- <argLine>-Dfile.encoding=UTF-8 -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=256m</argLine> &lt;!&ndash; 解决maven test命令时console出现中文乱码乱码 &ndash;&gt;-->
<testFailureIgnore>true</testFailureIgnore>
<suiteXmlFiles>
<file>testng.xml</file>
</suiteXmlFiles>
<properties>
<property>
<name>usedefaultlisteners</name>
<value>true</value>
</property>
</properties>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5</version>
<configuration>
<!--源码版本 -->
<source>1.8</source>
<!--编译的版本 -->
<target>1.8</target>
<!--指定编码 -->
<encoding>utf-8</encoding>
</configuration>
</plugin>
</plugins>
<!--配置resources 资源-->
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.xls</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
</project>
\ No newline at end of file
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.ArrayList;
import java.util.List;
/**
* Created by zhangying on 2020/11/19
*/
public class TestAddRelation extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_addRelation") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
// dal.setCase_owner("zhangying")
// .setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
/**
* 测试课次添加关联文件
*/
@Test
public void testAddRelation() {
List contentList = new ArrayList();
contentList.add("1329253624435363842");
System.out.println("contentList= "+contentList);
JSONObject jsonObject = new JSONObject();
jsonObject.put("instId","1235115978015883266");
jsonObject.put("relationId","1329252848772321283");
jsonObject.put("relationType","SCHEDULE");
jsonObject.put("addFolderIds",contentList);
System.out.println("jsonObject = "+jsonObject);
xmAppApi.doPost(okHttpClient, url, params, jsonObject.toJSONString() , headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
Assert.assertEquals("false", jsonBody.getString("success"));
Assert.assertEquals("存在已有的关联关系", jsonBody.getString("message"));
}
}
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.cases.largeClassLive.LargeClassLiveTools;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
/**
* Created by zhangying on 2020/11/27
*/
public class TestChangeCourseState extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_changeCourseState") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
super.beforeTest();
}
/**
* 测试改变直播课次状态
*/
@Test
public void testChangeCourseState() {
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.getLargeClassLive();
String liveCourseId= (String) largeClassLive.get("liveCourseId");
JSONObject jsonObject = new JSONObject();
jsonObject.put("liveCourseId",liveCourseId);
jsonObject.put("courseState","STARTING");
xmAppApi.doRequest(RequestType.JSON, params, jsonObject.toJSONString(), headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
}
}
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
/**
* Created by zhangying on 2020/11/27
*/
public class TestClientLaunch extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_clientLaunch") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
super.beforeTest();
}
/**
* 测试启动直播客户端
*/
@Test
public void testClientLaunch() {
JSONObject jsonObject = new JSONObject();
xmAppApi.doRequest(RequestType.JSON, params, jsonObject.toJSONString(), headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
}
}
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
import static io.restassured.RestAssured.given;
import static org.hamcrest.Matchers.equalTo;
/**
* Created by zhangying on 2020/11/16
*/
public class TestGetCourseList extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_getCourseList") // API 名称 必传
// .setEnv("prod") // 运行环境 测试时可指定自己要运行的环境。 不穿默认取系统指定的允许环境
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("zhangying")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
/**
* 测试资料云盘-新增保存文件夹
*/
@Test
public void testGetCourseList() {
Map bodyMap = new HashMap();
bodyMap.put("adminId", "1235115979394306049");
bodyMap.put("channel", "XIAOMAI");
bodyMap.put("endTime",System.currentTimeMillis() + 30 * 60 * 1000);
bodyMap.put("instId", "1235115978015883266");
bodyMap.put("startTime", System.currentTimeMillis() + 60 * 1000);
bodyMap.put("teacherId","1235115979473997826");
String bodydata = JSONObject.toJSONString(bodyMap);
// 接口请求 返回responseBody
given()
.header("Content-Type", "application/json")
.queryParams(params)
.headers(headers)
.body(bodydata)
.when()
.post(xmAppApi.getUrl())
.then().log().all()
.body("success", equalTo(true));
}
}
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
/**
* Created by zhangying on 2020/11/18
*/
public class TestGetLastedVersion extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_getLastedVersion") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
// dal.setCase_owner("zhangying")
// .setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
/**
* 获取最新版本号
*/
@Test
public void testSaveFolder() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("model","1");
jsonObject.put("platform","1");
xmAppApi.doPost(okHttpClient, url, params, jsonObject.toJSONString() , headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
// Assert.assertEquals(jsonBody.getJSONObject("result").getString("total"), Integer.toString(jsonBody.getJSONObject("result").getJSONArray("records").size()));
}
}
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.cases.largeClassLive.LargeClassLiveTools;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
/**
* Created by zhangying on 2020/11/27
*/
public class TestInitXmLive extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_initXmLive") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
super.beforeTest();
}
/**
* 测试初始化直播间信息
*/
@Test
public void testInitXmLive() {
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.getLargeClassLive();
xmAppApi.doRequest(RequestType.JSON, params, "{\"liveCourseId\":"+largeClassLive.get("liveCourseId")+"}", headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
}
}
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
import static io.restassured.RestAssured.given;
import static org.hamcrest.Matchers.equalTo;
/**
* Created by zhangying on 2020/11/16
*/
public class TestQueryLiveAccount extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_queryLiveAccount") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("zhangying")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
/**
* 测试资料云盘-新增保存文件夹
*/
@Test
public void testQueryLiveAccount() {
Map bodyMap = new HashMap();
bodyMap.put("instId", "1235115978015883266");
String bodydata = JSONObject.toJSONString(bodyMap);
// 接口请求 返回responseBody
given()
.header("Content-Type", "application/json")
.queryParams(params)
.headers(headers)
.body(bodydata)
.when()
.post(xmAppApi.getUrl())
.then().log().all()
.body("success", equalTo(true));
}
}
package com.live.cases.apollo;
import com.alibaba.fastjson.JSONObject;
import com.live.cases.largeClassLive.LargeClassLiveTools;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
/**
* Created by zhangying on 2020/11/27
*/
public class TestQueryStudentByCourseId extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_queryStudentByCourseId") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
super.beforeTest();
}
/**
* 测试通过课次id查询直播学员
*/
@Test
public void testQueryStudentByCourseId() {
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.getLargeClassLive();
String liveCourseId= (String) largeClassLive.get("liveCourseId");
JSONObject jsonObject = new JSONObject();
jsonObject.put("liveCourseId",liveCourseId);
jsonObject.put("current",1);
jsonObject.put("size",3500);
xmAppApi.doRequest(RequestType.JSON, params, jsonObject.toJSONString(), headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.baseapi.ApiBaseTestFile;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* Created by zhangying on 2020/11/16
*/
public class TestEmployeeFolderList extends ApiBaseTestFile {
@Override
public String getApiName() {
return "API_employeeFolderList";
}
/**
* 测试员工文件列表
*/
@Test
public void testEmployeeFolderList(){
JSONObject jsonObject = new JSONObject();
jsonObject.put("current","1");
jsonObject.put("size","10");
jsonObject.put("disk", "EMPLOYEE");
jsonObject.put("instId", "1235115978015883266");
xmAppApi.doPost(okHttpClient, url, params, jsonObject.toJSONString() , headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
Assert.assertEquals(jsonBody.getJSONObject("result").getString("total"), Integer.toString(jsonBody.getJSONObject("result").getJSONArray("records").size()));
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.CloudClassBaseTest;
import com.live.enums.RequestType;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* 文件列表,自行判断用户id
*
* @author xue.w
* @since 2020/09/16 at 6:03 下午
**/
public class TestFolderList extends CloudClassBaseTest {
@Override
public String getApiName() {
return "API_folderList";
}
@Test(description = "获取文件列表")
public void testFolderList(){
JSONObject jsonObject = new JSONObject();
jsonObject.put("current","1");
jsonObject.put("disk", "MYSELF");
jsonObject.put("size", Integer.toString(Integer.MAX_VALUE));
xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
System.out.println(jsonBody);
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
Assert.assertEquals(jsonBody.getJSONObject("result").getString("total"), Integer.toString(jsonBody.getJSONObject("result").getJSONArray("records").size()));
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.ApiBaseTest;
import com.live.xmutils.FolderMethod;
import org.testng.Assert;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
/**
* Created by wujie on 2020/09/16
*/
public class TestFolderList01 extends ApiBaseTest {
@Override
protected String getApiName(){
return "API_folderList";
}
// @BeforeMethod
// public void beforeTest(){
// //设置测试信息:env、Apimodule、Apiname、接口账号信息、端口位
// xmAppApi.setApiModule(ApiModele.CloudClass_Video) // API 所属模块
// .setApiName("API_createLessonSchedule") // API 名称
// .setEnv("rc") // 运行环境
// .setLoginUser("wujie_b") // 测试账号
// .setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
//
// /*dal.setCase_owner("wujie")
// .setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);*/
//
// super.beforeTest();
// }
@DataProvider(name = "testData")
public Object[][] testdata(){
return new Object[][]{
{"MYSELF", 10, 1},
{"COMMON", 10 ,1},
{"EMPLOYEE", 10 ,1}
};
}
@Test(dataProvider = "testData")
public void testFolderList(String disk, int size, int current){
//设置请求文件夹参数
// String data = "{\"size\":10,\"current\":1,\"folderIdType\":\"FOLDER\",\"disk\":\"MYSELF\","
// + "\"instId\":\"1290584237476061185\"}";
//"{\"size\":10,\"current":1,"folderIdType":"FOLDER","disk":"MYSELF","instId":"1290584237476061185"}";
//请求文件夹接口
/* okHttpClient.doPostRequest(url, params, data, headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();*/
// okHttpClient.doPostRequest(url,params,data,headers);
// JSONObject jsonBody = okHttpClient.getBodyInJSON();
String data = FolderMethod.folderList(disk,size,current);
JSONObject jsonBody = doRequest(data);
Assert.assertEquals("true", jsonBody.getString("success"));
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.CloudClassBaseTest;
import com.live.enums.RequestType;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* 获取用户具有权限的盘符,自行判断用户id
*
* @author xue.w
* @since 2020/09/16 at 4:09 下午
**/
public class TestGetUserDisk extends CloudClassBaseTest {
@Override
public String getApiName() {
return "API_getUserDisk";
}
@Test
public void testGetUserDisk() {
xmAppApi.doRequest(RequestType.JSON,params,"{}",headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
Assert.assertEquals(3, jsonBody.getJSONArray("result").size());
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
/**
* Created by zhangying on 2020/11/19
*/
public class TestMultiPartUpload extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_File) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("API_multiPartUpload") // API 名称 必传
.setEnv("prod") // 运行环境 测试时可指定自己要运行的环境。 不穿默认取系统指定的允许环境
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
// dal.setCase_owner("zhangying")
// .setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
/**
* 测试资料云盘-文件夹中上传pptx文件
*/
@Test
public void testMultiPartUpload() {
Map contentMap = new HashMap();
contentMap.put("folderId","1328233404495687681");
System.out.println("contentMap= "+contentMap);
Map bodyMap = new HashMap();
bodyMap.put("accessTypeEnum", "PUBLIC");
bodyMap.put("bizCode", "UPLOAD_FOLDER");
bodyMap.put("data", contentMap);
bodyMap.put("instId", "1235115978015883266");
bodyMap.put("resourceName", "XWX8GXcwRaHmicrZ.pptx");
System.out.println("bodyMap = "+bodyMap);
String bodydata = JSONObject.toJSONString(bodyMap);
xmAppApi.doPost(okHttpClient, url, params, bodydata , headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
// Assert.assertEquals(jsonBody.getJSONObject("result").getString("total"), Integer.toString(jsonBody.getJSONObject("result").getJSONArray("records").size()));
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.baseapi.ApiBaseTestFile;
import com.xiaomai.utils.RandomStringUtil;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* Created by zhangying on 2020/11/16
*/
public class TestRenameFolder extends ApiBaseTestFile {
@Override
public String getApiName() {
return "API_renameFolde";
}
/**
* 文件夹重命名
*/
@Test
public void testRenameFolder(){
// GetFolderData getFolderList = new GetFolderData();
// List folerList = getFolderList.getFolderList();
// System.out.println("scoreTypeIdList= "+folerList);
String name = "自动化测试文件夹"+ RandomStringUtil.randomString(6); //文件夹名称
JSONObject jsonObject = new JSONObject();
jsonObject.put("id","1328233404495687681");
jsonObject.put("name", name);
xmAppApi.doPost(okHttpClient, url, params, jsonObject.toJSONString() , headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
// Assert.assertEquals(jsonBody.getJSONObject("result").getString("total"), Integer.toString(jsonBody.getJSONObject("result").getJSONArray("records").size()));
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.RandomStringUtil;
import com.xiaomai.utils.XMBaseTest;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
import static io.restassured.RestAssured.given;
import static org.hamcrest.Matchers.equalTo;
/**
* Created by zhangying on 2020/11/16
*/
public class TestSaveFolder extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_File) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("API_saveFolder") // API 名称 必传
// .setEnv("prod") // 运行环境 测试时可指定自己要运行的环境。 不穿默认取系统指定的允许环境
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
// dal.setCase_owner("zhangying")
// .setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
/**
* 测试资料云盘-新增保存文件夹
*/
@Test
public void testSaveFolder() {
String name = "测试文件夹新增"+ RandomStringUtil.randomString(6); //云盘文件名称
Map bodyMap = new HashMap();
bodyMap.put("createUser", "ADMIN");
bodyMap.put("disk", "MYSELF");
bodyMap.put("folderTypeEnum", "FOLDER");
bodyMap.put("instId", "1235115978015883266");
bodyMap.put("name", name);
bodyMap.put("parentId", null);
String bodydata = JSONObject.toJSONString(bodyMap);
// 接口请求 返回responseBody
given()
.header("Content-Type", "application/json")
.queryParams(params)
.headers(headers)
.body(bodydata)
.when()
.post(xmAppApi.getUrl())
.then().log().all()
.body("success", equalTo(true));
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
//import com.live.utils.TimeSetting;
/**
* @Description 文件列表,公共文件
* @author zhangyumeng
*/
public class testCommonFolderList extends XMBaseTest {
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModele.CloudClass_B_commonFolderList )
.setApiName("API_commonFolderList")
.setLoginUser("zhangYuM_b")
.setTerminal(Terminal.B);
super.beforeTest();
}
@Test
public void testCommonFolderList(){
JSONObject jsonObject = new JSONObject();
//jsonObject.put("bizAccountId","1323235986786807809");
jsonObject.put("current",1);
jsonObject.put("disk", "COMMON");
jsonObject.put("folderIdType", "FOLDER");
jsonObject.put("instId","1300628703858597889");
jsonObject.put("searchName", null);
jsonObject.put("size", 10);
System.out.println("请求" + jsonObject);
xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers).assetsSuccess(true);
//
JSONObject responseRes = xmAppApi.getBodyInJSON();
}
}
package com.live.cases.fileManage;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.GetFolderData;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.annotations.BeforeMethod;
import java.util.ArrayList;
import java.util.List;
/**
* @Description 删除公共文件列表的文件
* @author zhangyumeng
*/
public class testDelCommonFolder extends XMBaseTest {
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModele.CloudClass_File )
.setApiName("API_delCommomFolder")
.setLoginUser("zhangYuM_b")
.setTerminal(Terminal.B);
super.beforeTest();
}
// @Test
public void testDelCommonFolderList(){
GetFolderData testCommonFolderList = new GetFolderData();
String id = testCommonFolderList.getCommonFolderListFirstId();
System.out.println("获取id" + id);
JSONObject jsonObject = new JSONObject();
List StringList = new ArrayList();
StringList.add(id);
jsonObject.put("ids", StringList);
jsonObject.put("instId","1300628703858597889");
System.out.println("请求" + jsonObject);
xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers).assetsSuccess(true);
JSONObject responseRes = xmAppApi.getBodyInJSON();
}
}
package com.live.cases.interactionLive;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author NHX
* @Function 班级摘要列表
* @Date 2020/11/16 20:36
*/
public class TestClassDigestList extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_B) // API 所属模块
.setApiName("API_classdigestList") // API 名称
//.setEnv(Env.PROD) // 运行环境
.setLoginUser("NHX_b") // http 接口,测试账号
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("NHX")
.setCase_name("直播课加载学员摘要列表:" + Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
System.out.println(dal);
super.beforeTest();
}
@Test(description = "直播课加载学员摘要列表")
public void testLoadStudentListAPI(){
Map<String,Object> bodyMap = new HashMap<>();
bodyMap.put("size",10);
bodyMap.put("showNumber",100);
bodyMap.put("current",1);
bodyMap.put("courseId","");
bodyMap.put("classType","");
bodyMap.put("classNameLike","");
List<String> status = new ArrayList<>();
status.add("INIT");
status.add("STUDYING");
status.add("END");
bodyMap.put("status",status);
JSONObject jsonBody = new JSONObject(bodyMap);
String data = jsonBody.toJSONString();
System.out.println("请求参数==========="+jsonBody.toString());
xmAppApi.doRequest(RequestType.JSON, params, data, headers);
JSONObject jsonResponseBody = xmAppApi.getBodyInJSON();
Assert.assertEquals(jsonResponseBody.getString("success"), "true", "true");
//Assert.assertEquals(JsonParse.ParseJsonToString(jsonResponseBody, "success").toString(), "true");
}
}
package com.live.cases.interactionLive;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
/**
* @author NHX
* @Function 课程摘要列表
* @Date 2020/11/16 20:34
*/
public class TestCourseDigestList extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_B) // API 所属模块
.setApiName("API_coursedigestList") // API 名称
//.setEnv(Env.PROD) // 运行环境
.setLoginUser("NHX_b") // http 接口,测试账号
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("NHX")
.setCase_name("直播课加载学员摘要列表:" + Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
System.out.println(dal);
super.beforeTest();
}
@Test(description = "创建直播加载学生")
public void testLoadStudentListAPI(){
Map<String,Object> bodyMap = new HashMap<>();
bodyMap.put("size",10);
bodyMap.put("showNumber",100);
bodyMap.put("current",1);
JSONObject jsonBody = new JSONObject(bodyMap);
String data = jsonBody.toJSONString();
System.out.println("请求参数==========="+jsonBody.toString());
xmAppApi.doRequest(RequestType.JSON, params, data, headers);
JSONObject jsonResponseBody = xmAppApi.getBodyInJSON();
Assert.assertEquals(jsonResponseBody.getString("success"), "true", "true");
}
}
package com.live.cases.interactionLive;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
/**
* @author NHX
* @Function B端课表管理-课次详情 按关系Id获取关系
* @Date 2020/11/19 15:01
*/
public class TestGetRelationByRelationId_B extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_File) // API 所属模块
.setApiName("API_getRelationByRelationId") // API 名称
.setLoginUser("NHX_b") // http 接口,测试账号
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("NHX")
.setCase_name("B端课表管理-课次详情 按关系Id获取关系:" + Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@Test(description = "B端课表管理-课次详情 按关系Id获取关系")
public void testLoadStudentListAPI(){
Map<String,Object> bodyMap = new HashMap<>();
bodyMap.put("relationId","1275721048882462728");
bodyMap.put("relationType","SCHEDULE");
bodyMap.put("instId","1235818358426509313");
JSONObject jsonBody = new JSONObject(bodyMap);
String data = jsonBody.toJSONString();
System.out.println("请求参数==========="+data);
xmAppApi.doRequest(RequestType.JSON, params, data, headers);
JSONObject jsonResponseBody = xmAppApi.getBodyInJSON();
Assert.assertEquals(jsonResponseBody.getString("success"), "true", "操作成功!");
}
}
package com.live.cases.interactionLive;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
/**
* @author NHX
* @Function C端课表管理-课次详情 按关系Id获取关系
* @Date 2020/11/19 15:01
*/
public class TestGetRelationByRelationId_C extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_customerLive) // API 所属模块
.setApiName("API_getRelationByRelationId") // API 名称
.setLoginUser("NHX_c") // http 接口,测试账号
.setTerminal(Terminal.C); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("NHX")
.setCase_name("C端课表管理-课次详情 按关系Id获取关系:" + Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@Test(description = "C端课表管理-课次详情 按关系Id获取关系")
public void testLoadStudentListAPI(){
Map<String,Object> bodyMap = new HashMap<>();
bodyMap.put("relationId","1145627043559436291");
bodyMap.put("relationType","SCHEDULE");
JSONObject jsonBody = new JSONObject(bodyMap);
String data = jsonBody.toJSONString();
System.out.println("请求参数==========="+data);
xmAppApi.doRequest(RequestType.JSON, params, data, headers);
JSONObject jsonResponseBody = xmAppApi.getBodyInJSON();
Assert.assertEquals(jsonResponseBody.getString("success"), "true", "操作成功!");
}
}
package com.live.cases.interactionLive;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author NHX
* @Function C端获取课表文件计数
* @Date 2020/11/19 15:01
*/
public class TestGetScheduleFileCount_C extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_customerLive) // API 所属模块
.setApiName("API_getScheduleFileCount") // API 名称
.setLoginUser("NHX_c") // http 接口,测试账号
.setTerminal(Terminal.C); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("NHX")
.setCase_name("C端获取课表文件计数:" + Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@Test(description = "C端获取课表文件计数")
public void testLoadStudentListAPI(){
List list = new ArrayList();
list.add("1145613399253643266");
Map<String,Object> bodyMap = new HashMap<>();
bodyMap.put("scheduleIds",list);
JSONObject jsonBody = new JSONObject();
String data = jsonBody.toJSONString();
System.out.println("请求参数==========="+data);
xmAppApi.doRequest(RequestType.JSON, params, data, headers);
JSONObject jsonResponseBody = xmAppApi.getBodyInJSON();
Assert.assertEquals(jsonResponseBody.getString("success"), "true", "操作成功!");
}
}
package com.live.cases.interactionLive;
import com.alibaba.fastjson.JSONObject;
import com.live.cases.largeClassLive.LargeClassLiveTools;
import com.live.xmutils.CloudClassBaseTest;
import com.live.enums.RequestType;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* 获取直播课次学员列表
*
* @author xue.w
* @since 2020/09/15 at 3:17 下午
**/
public class TestGetStudentList extends CloudClassBaseTest {
@Override
public String getApiName() {
return "API_getStudentList";
}
@Test
public void testGetStudentList() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("current","1");
jsonObject.put("size","10");
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.getLargeClassLive();
jsonObject.put("liveCourseId",largeClassLive.get("liveCourseId"));
xmAppApi.doRequest(RequestType.JSON, params, jsonObject.toString(), headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
}
}
package com.live.cases.interactionLive;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.HashMap;
import java.util.Map;
/**
* @author NHX
* @Function 使用可用帐户获取学生名单
* @Date 2020/11/13 17:34
*/
public class TestGetStudentListWithUseAbleAccount extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
xmAppApi.setApiModule(ApiModele.CloudClass_B) // API 所属模块
.setApiName("API_getStudentListWithUseAbleAccount") // API 名称
// .setEnv(Env.PROD) // 运行环境
.setLoginUser("NHX_b") // http 接口,测试账号
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("NHX")
.setCase_name("使用可用帐户获取学生名单:" + Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
System.out.println(dal);
super.beforeTest();
}
@Test(description = "使用可用帐户获取学生名单")
public void testLoadStudentListAPI(){
Map<String,Object> bodyMap = new HashMap<>();
bodyMap.put("size",10);
bodyMap.put("current",1);
JSONObject jsonBody = new JSONObject(bodyMap);
String data = jsonBody.toJSONString();
System.out.println("请求参数==========="+jsonBody.toString());
xmAppApi.doRequest(RequestType.JSON, params, data, headers);
JSONObject jsonResponseBody = xmAppApi.getBodyInJSON();
Assert.assertEquals(jsonResponseBody.getString("success"), "true", "true");
}
}
package com.live.cases.largeClassLive;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.client.DataUserInfo;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.RandomStringUtil;
import com.xiaomai.utils.XMBaseTest;
/**
* 直播工具类
*
* @author xue.w
* @since 2020/11/16 at 3:54 下午
**/
public class LargeClassLiveTools extends XMBaseTest {
//获取大班直播,无则新增
public JSONObject getLargeClassLive(DataUserInfo... userInfo) {
dataApi.setApiModule(ApiModele.CloudClass_B)
.setApiName("API_getLargeClassLiveList")
.setTerminal(Terminal.B);
super.beforeDataRequest(userInfo);
dataApi.doRequest(RequestType.JSON,params, "", dataheadrs);
if (dataApi.getBodyInJSON().getJSONObject("result").getJSONArray("records").size() >0) {
return dataApi.getBodyInJSON().getJSONObject("result").getJSONArray("records").getJSONObject(0);
}
return createLargeClassLive(userInfo);
}
//新建大班直播
public JSONObject createLargeClassLive(DataUserInfo... userInfo) {
dataApi.setApiModule(ApiModele.CloudClass_B)
.setApiName("API_createLargeClassLive")
.setTerminal(Terminal.B);
super.beforeDataRequest(userInfo);
dataApi.doRequest(RequestType.JSON, params, buildCreateLargeClassLiveParam().toJSONString(), dataheadrs);
return getLargeClassLive(userInfo);
}
//组装大班直播新增的数据
public JSONObject buildCreateLargeClassLiveParam() {
JSONObject largeClassLive = new JSONObject();
largeClassLive.put("courseName", RandomStringUtil.randomNumber(14, "live_course_"));
largeClassLive.put("teacherId",xmAppApi.getLoginInfo().getTid());
largeClassLive.put("startTime",System.currentTimeMillis() + 60 * 1000);
largeClassLive.put("endTime",System.currentTimeMillis() + 30 * 60 * 1000);
largeClassLive.put("needRecord","YES");
largeClassLive.put("liveType","LARGE_CLASS_LIVE");
largeClassLive.put("consumeHourNum",1);
largeClassLive.put("consumeClassTime","1");
return largeClassLive;
}
}
package com.live.cases.largeClassLive;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.live.utils.TimeSetting;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.util.ArrayList;
/**
* @Author: zhangyumneg
* @Date: 2020/11/12
* @Description: 创建大班直播课
*/
public class TestCreateBigLiveClass extends XMBaseTest {
//private Object TimeSetting;
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModele.CloudClass_B_createbiglivecourse)
.setApiName("API_createBigLiveCourse")
.setLoginUser("zhangYuM_b")
.setTerminal(Terminal.B);
super.beforeTest();
}
@Test
public void testCreateBigLiveCourse() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("coverUrl", "https://image.xiaomaiketang.com/xm/YNfi45JwFA.png");
TimeSetting startTime = new TimeSetting();
jsonObject.put("startTime", startTime.startTime());
TimeSetting endTime = new TimeSetting();
jsonObject.put("endTime", endTime.endTime());
jsonObject.put("teacherId", "1323235986786807809");
jsonObject.put("liveType", "LARGE_CLASS_LIVE");
jsonObject.put("consumeHourNum", 1);
jsonObject.put("consumeClassTime", 0);
jsonObject.put("adminIds", new ArrayList<>());
jsonObject.put("courseName", "自动化创建直播课");
jsonObject.put("studentIds", new ArrayList<>());
jsonObject.put("consumeStudentIds", new JSONArray());
jsonObject.put("liveCourseMediaRequests", new JSONArray());
jsonObject.put("needRecord", "YES");
jsonObject.put("applyMode", "ANYONE");
jsonObject.put("calendarTime", new JSONArray());
jsonObject.getJSONArray("calendarTime").add("1605183968521");
System.out.println("请求" + jsonObject);
xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers).assetsSuccess(true);
JSONObject responseRes = xmAppApi.getBodyInJSON();
}
}
package com.live.cases.largeClassLive;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.CloudClassBaseTest;
import com.live.enums.RequestType;
import org.apache.commons.lang.StringUtils;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* @author xue.w
*/
public class TestCreateLargeClassLive extends CloudClassBaseTest {
@Override
public String getApiName() {
return "API_createLargeClassLive";
}
@Test
public void testCreateLargeClassLive() {
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.buildCreateLargeClassLiveParam();
xmAppApi.doRequest(RequestType.JSON, params, largeClassLive.toString(), headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals(jsonBody.getString("success"),"true");
Assert.assertEquals(StringUtils.isNotBlank(jsonBody.getString("result")),true);
}
}
package com.live.cases.largeClassLive;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.CloudClassBaseTest;
import com.live.enums.RequestType;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* @author xue.w
*/
public class TestDelLargeClassLive extends CloudClassBaseTest {
@Override
public String getApiName() {
return "API_delLargeClassLive";
}
@Test
public void testDelCourse() {
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.getLargeClassLive();
xmAppApi.doRequest(RequestType.JSON, params, "{\"liveCourseId\":"+largeClassLive.get("liveCourseId")+"}", headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
}
}
package com.live.cases.largeClassLive;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.CloudClassBaseTest;
import com.live.enums.RequestType;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* 获取机构的直播间账户列表
*
* @author xue.w
* @since 2020/09/17 at 10:15 上午
**/
public class TestQueryLiveAccount extends CloudClassBaseTest {
@Override
public String getApiName() {
return "API_queryLiveAccount";
}
@Test
public void testQueryLiveAccount(){
xmAppApi.doRequest(RequestType.JSON, params, "", headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
Assert.assertEquals("true", jsonBody.getString("success"));
Assert.assertEquals("操作成功!", jsonBody.getString("message"));
Assert.assertEquals( jsonBody.getJSONArray("result").getJSONObject(0).getString("channel"),"XIAOMAI");
}
}
package com.live.cases.largeClassLive;
import com.alibaba.fastjson.JSONObject;
import com.live.xmutils.CloudClassBaseTest;
import com.live.enums.RequestType;
import org.testng.Assert;
import org.testng.annotations.Test;
/**
* @author xue.w
*/
public class TestUpdateLargeClassLive extends CloudClassBaseTest {
@Override
public String getApiName() {
return "API_updateLargeClassLive";
}
@Test
public void testUpdateLargeClassLive() {
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.getLargeClassLive();
xmAppApi.doRequest(RequestType.JSON, params, largeClassLive.toString(), headers);
JSONObject jsonBody = xmAppApi.getBodyInJSON();
if (!CODE_SUCCESS.equals(jsonBody.getString("code"))) {
Assert.assertEquals("false", jsonBody.getString("success"));
//Assert.assertEquals("晚于开课前30分钟无法修改课程!", jsonBody.getString("message"));
//Assert.assertEquals("不允许更改课程信息", jsonBody.getString("message"));
return;
}
Assert.assertEquals(jsonBody.getString("success"),"true");
Assert.assertEquals(jsonBody.getString("code"),"200");
}
}
package com.live.enums;
/**
* API 模块名称 常量定义 可自己分模块自定义
* 如以后要在自己的业务线下划分多个模块,建议在自己业务线模块中单独维护
*/
public class ApiModele {
// 云课堂B端 接口模块名称
public static String CloudClass_B = "apiCaseData_b_cloudclass";
public static String CloudClass_B_createbiglivecourse = "cloudclass_createBigLiveCourse";
//云课堂接口模块名称
//云课堂B端接口模块
public static String CloudClass_Video = "cloudclass_video_b";
public static String CloudClass_File = "cloudclass_file_b";
//云课堂C端接口模块C
public static String CloudClass_VideoC = "cloudclass_video_c";
public static String CloudClass_FileC = "cloudclass_file_c";
public static String CloudClass_customerLive = "cloudclass_customerLive_api";
public static String CloudClass_apollo = "cloudclass_apollo_api";
public static String CloudClass_C_CheckAuthorize = "CloudClass_C_CheckAuthorize";
public static String CloudClass_B_commonFolderList = "cloudClass_B_commonFolderList";
}
package com.live.enums;
public class RequestType {
public static String JSON= "JSON";
public static String PARAM= "PARAM";
public static String FORM= "FORM";
public static String GET= "GET";
}
package com.live.enums;
/**
* 登录端位常量
*/
public class
Terminal {
public final static String M= "M";
public final static String B = "B";
public final static String C = "C";
public final static String minApp = "minApp";
public final static String APP_C = "app-c"; // 每课学堂 APP登录
}
package com.live.utils;
/**
* @Title: 设置直播开始&结束时间
* @Auth: zhangyumeng
* @Time: 2020/11/3
*/
public class TimeSetting{
public Object startTime(){
long totalMilliSeconds = System.currentTimeMillis();
return totalMilliSeconds; //获取直播开始时间
}
public Object endTime(){
long totalMilliSeconds1 = System.currentTimeMillis() +689216;
return totalMilliSeconds1; //获取直播结束时间
}
public static void main(String[] args) {
TimeSetting getTime = new TimeSetting();
getTime.startTime();
getTime.endTime();
System.out.println(getTime.startTime());
System.out.println(getTime.endTime());
}
}
package com.live.xmutils;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.client.BaseTest;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import org.springframework.test.context.ContextConfiguration;
import org.testng.ITestResult;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
@ContextConfiguration(locations = {"classpath:/spring-core.xml"})
public abstract class ApiBaseTest extends BaseTest {
@BeforeClass
public static void beforeClass() {
BaseTest.beforeClass();
}
@AfterClass
public static void afterClass() {
BaseTest.afterClass();
}
@BeforeMethod
public void beforeTest() {
//设置测试信息:env、Apimodule、Apiname、接口账号信息、端口位
xmAppApi.setApiModule(ApiModele.CloudClass_Video) // API 所属模块
.setApiName(getApiName()) // API 名称
.setEnv("prod") // 运行环境
.setLoginUser("wujie_b") // 测试账号
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
/*dal.setCase_owner("wujie")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);*/
super.beforeTest();
}
@AfterMethod
public void afterTest(ITestResult result) {
super.afterMethod(result);
}
/**
*
* @return
*/
protected abstract String getApiName();
// protected String getTerminal(){
// return "Terminal.B";
// };
//protected abstract String getApiModule();
protected static JSONObject doRequest(String data){
// set default time
// xmAppApi.setApi_requestTime(0L);
okHttpClient.doPostRequest(url,data,headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
return jsonBody;
}
}
package com.live.xmutils;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.client.BaseTest;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import org.testng.ITestResult;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
/**
* Created by wujie on 2020/10/11
*/
public abstract class AppApiBaseTest extends ApiBaseTest {
@BeforeClass
public static void beforeClass() {
BaseTest.beforeClass();
}
@AfterClass
public static void afterClass() {
BaseTest.afterClass();
}
@BeforeMethod
public void beforeTest() {
//设置测试信息:env、Apimodule、Apiname、接口账号信息、端口位
xmAppApi.setApiModule(ApiModele.CloudClass_Video) // API 所属模块
.setApiName(getApiName()) // API 名称
.setEnv("prod") // 运行环境
.setLoginUser("wujie_b") // 测试账号
.setTerminal(Terminal.C); // 所属端位(B端,C端,M端等, 必传)
/*dal.setCase_owner("wujie")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);*/
super.beforeTest();
}
@AfterMethod
public void afterTest(ITestResult result) {
super.afterMethod(result);
}
/**
*
* @return
*/
protected abstract String getApiName();
// protected String getTerminal(){
// return "Terminal.B";
// };
//protected abstract String getApiModule();
protected static JSONObject doRequest(String data){
okHttpClient.doPostRequest(url,data,headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
return jsonBody;
}
}
package com.live.xmutils;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.annotations.BeforeMethod;
/**
* 云课堂测试基础公类
*
* @author xue.w
* @since 2020/09/16 at 11:20 上午
**/
public class CloudClassBaseTest extends XMBaseTest implements CloudClassBaseTestImpl {
public static final String CODE_SUCCESS = "200";
public static final String CODE_NOT_FOUND_STU = "10000";
public String getApiModuleName(){
return ApiModele.CloudClass_B;
}
public String getApiName(){
return "";
};
public String getLoginUser(){
return "wangxue_b";
}
public String getTerminal(){
return Terminal.B;
}
public String getCaseOwner(){
return "wangxue";
}
@BeforeMethod
@Override
public void beforeTest() {
xmAppApi.setApiModule(getApiModuleName())
.setApiName(getApiName())
.setLoginUser(getLoginUser())
.setTerminal(getTerminal());
dal.setCase_owner(getCaseOwner())
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
}
package com.live.xmutils;
/**
* 云课堂测试接口定义类
*
* @author xue.w
* @since 2020/09/16 at 11:26 上午
**/
public interface CloudClassBaseTestImpl {
public void beforeTest();
}
package com.live.xmutils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import org.testng.annotations.Test;
/**
* Created by wujie on 2020/09/22
*/
public class ConsumerSchedule extends ApiBaseTest {
@Override
protected String getApiName() {
return "API_createSignUpVoucher";
}
// @BeforeMethod
// public void beforeTest() {
// //设置测试信息:env、Apimodule、Apiname、接口账号信息、端口位
// xmAppApi.setApiModule(ApiModele.God_B) // API 所属模块
// .setApiName("API_saveStudent") // API 名称
// .setEnv("rc") // 运行环境
// .setLoginUser("wujie_b") // 测试账号
// .setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
//
// /*dal.setCase_owner("wujie")
// .setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);*/
//
// super.beforeTest();
// }
@Test(enabled = false)
public static void testStudentSchedule() throws InterruptedException {
// String data1 = "{\"arrearsDetails\":[],\"buyerId\":-1,\"signUpVoucherDetails\":[{\"actualAmount\":50.5," +
// "\"commodityNum\":1,\"commoditySpecId\":\"1308283055693492226\",\"purchaseItemType\":\"COURSE\"," +
// "\"classId\":\"\",\"courseId\":\"1308283055347929090\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":100,\"commodityNum\":1," +
// "\"commoditySpecId\":\"1290133296260833282\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
// "\"courseId\":\"1290133295924903937\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":660,\"commodityNum\":1," +
// "\"commoditySpecId\":\"1308287173149454338\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
// "\"courseId\":\"1308287172824862721\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"}],\"receivableAmount\":810.5,\"paidAmount\":810.5," +
// "\"studentId\":\"1308415293825691649\",\"paymentFlows\":[{\"paymentType\":\"CASH\",\"paymentAmount\":810.5}]," +
// "\"bizAccountId\":\"1291247057398218754\",\"operationDate\":1600786027972,\"businessOwners\":[]," +
// "\"objectId\":\"fAd2dQDWXiYwEwPAy3xY64wXpAsyTR6X\",\"userCouponIds\":[],\"validVoucher\":true}";
//添加学员
/*String data = "{\"studentBasicRequest\":{\"bakPhoneRemark\":\"DAD\",\"genderEnum\":\"UNKNOWN\",\"name\":\"10000000000\"," +
"\"onlyAge\":false,\"phone\":\" \",\"phoneRemark\":\"MOM\",\"statusEnum\":\"NORMAL\"}," +
"\"studentExpandRequest\":{\"attrList\":[]},\"studentHistoryRequest\":{}," +
"\"studentSaleRequest\":{\"position\":\"UN_SPECIFIED\"}}";
JSONObject obj = JSONObject.parseObject(data);
// set name
String name = obj.getJSONObject("studentBasicRequest").getString("name");
Long nameInt = Long.valueOf(name);
System.out.println(nameInt);
*/
String data1 = "{\"arrearsDetails\":[],\"buyerId\":-1,\"signUpVoucherDetails\":[{\"actualAmount\":50.5," +
"\"commodityNum\":1,\"commoditySpecId\":\"1308283055693492226\",\"purchaseItemType\":\"COURSE\"," +
"\"classId\":\"\",\"courseId\":\"1308283055347929090\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
"\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":100,\"commodityNum\":1," +
"\"commoditySpecId\":\"1290133296260833282\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
"\"courseId\":\"1290133295924903937\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
"\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":660,\"commodityNum\":1," +
"\"commoditySpecId\":\"1308287173149454338\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
"\"courseId\":\"1308287172824862721\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
"\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"}],\"receivableAmount\":810.5,\"paidAmount\":810.5," +
"\"studentId\":\"1308415293825691649\",\"paymentFlows\":[{\"paymentType\":\"CASH\",\"paymentAmount\":810.5}]," +
"\"bizAccountId\":\"1291247057398218754\",\"operationDate\":1600786027972,\"businessOwners\":[]," +
"\"objectId\":\"fAd2dQDWXiYwEwPAy3xY64wXpAsyTR6X\",\"userCouponIds\":[],\"validVoucher\":true}";
JSONObject obj1 = JSONObject.parseObject(data1);
//String objectId = obj1.getString("objectId");
String [] studenId = new String[]{"1308601157298106370","1308601158363459586","1308601159495921665"
// "1308601160473194498","1308601161580490753","1308601162364825602","1308601163295961089",
// "1308601119255769089","1308601164201930754","1308601166110339074","1308601167184080897",
// "1308601170543718402","1308601169805520898","1308601168882774018","1308601168102633473",
// "1308601171550351361","1308601172359852034","1308601177736949761","1308601179766992897",
// "1308601187287379969","1308601186196860930","1308601183999045634","1308601181868339201",
// "1308601188159795202","1308601188952518657","1308601190034649090","1308601190701543426",
// "1308601092940705794","1308601091791466498","1308601090768056322","1308601191481683970",
// "1308601195080396801","1308601194266701825","1308601193222320129","1308601192542842882",
// "1308601195944423426","1308601196850393089","1308601197693448193","1308601198511337473",
// "1308601082186510338","1308601081175683074","1308601080282296321","1308601200528797698",
// "1308601203313815554","1308601202386874370","1308601201589956609","1308601199404724225",
// "1308601068290781185","1308601204194619394","1308601204911845378","1308601205868146690",
// "1308601209215201281","1308601208485392385","1308601207571034113","1308601206715396098",
// "1308601210150531073","1308601210855174146","1308601212021190657","1308601214953009154",
// "1308601226491539458","1308601225694621697","1308601219189256194","1308601217104687105"
// "1308601136657936386","1308601137349996546","1308601138478264321","1308601139279376386",
// "1308601140172763138","1308601141070344194","1308601141829513218","1308601144463536129",
// "1308601146539716610","1308601148662034433","1308601150960513026","1308601152017477634",
// "1308601152936030210","1308601154190127106","1308601155179982850","1308601156446662657"
};
int size = studenId.length;
// Long start = Long.valueOf("10000000200");
// Long stop = Long.valueOf("10000000201");
for (int i = 0; i < size; ++i) {
// String newName = String.valueOf(nameInt + i);
// System.out.println(newName);
//
// obj.getJSONObject("studentBasicRequest").put("name", newName);
// obj.getJSONObject("studentBasicRequest").put("phone", newName);
//String mdId = String.valueOf(studenId[i]);
//System.out.println(mdId);
System.out.println(studenId[i]);
obj1.put("objectId",studenId[i]);
obj1.put("studentId",studenId[i]);
String requestBody = JSON.toJSONString(obj1);
//
okHttpClient.doPostRequest(url, requestBody, headers);
//Thread.currentThread().sleep(1000);
//JSONObject jsonBody = okHttpClient.getBodyInJSON();
//String getstudentId = jsonBody.getJSONObject("result").getJSONObject("studentBasicVO").getString("studentId");
//System.out.println(jsonBody);
// String data1 = "{\"arrearsDetails\":[],\"buyerId\":-1,\"signUpVoucherDetails\":[{\"actualAmount\":50.5," +
// "\"commodityNum\":1,\"commoditySpecId\":\"1308283055693492226\",\"purchaseItemType\":\"COURSE\"," +
// "\"classId\":\"\",\"courseId\":\"1308283055347929090\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":100,\"commodityNum\":1," +
// "\"commoditySpecId\":\"1290133296260833282\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
// "\"courseId\":\"1290133295924903937\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":660,\"commodityNum\":1," +
// "\"commoditySpecId\":\"1308287173149454338\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
// "\"courseId\":\"1308287172824862721\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"}],\"receivableAmount\":810.5,\"paidAmount\":810.5," +
// "\"studentId\":\"1308415293825691649\",\"paymentFlows\":[{\"paymentType\":\"CASH\",\"paymentAmount\":810.5}]," +
// "\"bizAccountId\":\"1291247057398218754\",\"operationDate\":1600786027972,\"businessOwners\":[]," +
// "\"objectId\":\"fAd2dQDWXiYwEwPAy3xY64wXpAsyTR6X\",\"userCouponIds\":[],\"validVoucher\":true}";
//
// JSONObject obj1 = JSONObject.parseObject(data1);
//
// String newstudentId = getstudentId;
// obj1.getJSONObject("studentId").put("studentId",newstudentId);
// String reBody = JSON.toJSONString(obj1);
//
// okHttpClient.doPostRequest("/business/public/order/createSignUpVoucher", params, reBody, headers);
}
//okHttpClient.doPostRequest(url,params,data1,headers);
}
//StudentData student = new StudentData();
}
//class StudentData {
// String name;
// String phone;
// String statusEnum = "NORMAL";
// String phoneBak = "99800009999";
// String school = "哇哈哈小学";
// String birthday = "1268718248968";
// boolean onlyAge = true;
// String address = "哇哈哈小区3单元";
// String phoneRemark = "MOM";
// String gradeName = "一年级";
// String genderEnum = "MAN";
// String grade = "1";
// String bakPhoneRemark = "DAD";
// String remark = "创建学员";
//}
//
//class AddScheduleData {
// String[] arrearsDetails = new String[]{};
// int buyerId = -1;
// List<Map<String, Object>> signUpVoucherDetails = new ArrayList<>();
//
// public
//
// // signUpVoucherDetails.a
// // signUpVoucherDetails[0]={"actualAmount":50.5,"commodityNum":1,"commoditySpecId":"1308283055693492226","purchaseItemType":"COURSE","classId":"","courseId":"1308283055347929090","courseFeeType":"CLASS_HOUR","courseTag":"NEW","giftUnit":"CLASS_HOUR","unit":"CLASS_HOUR"};
//
//
// //String [] signUpVoucherDetails = new String[]{"actualAmount":50.5,"commodityNum":1,"commoditySpecId":"1308283055693492226","purchaseItemType":"COURSE","classId":"","courseId":"1308283055347929090","courseFeeType":"CLASS_HOUR","courseTag":"NEW","giftUnit":"CLASS_HOUR","unit":"CLASS_HOUR"},{"actualAmount":100,"commodityNum":1,"commoditySpecId":"1290133296260833282","purchaseItemType":"COURSE","classId":"","courseId":"1290133295924903937","courseFeeType":"CLASS_HOUR","courseTag":"NEW","giftUnit":"CLASS_HOUR","unit":"CLASS_HOUR"};
// float receivableAmount;
// float paidAmount;
// String StudentId;
// String bizAccountId;
// String operationDate;
// String[] businessOwners = new String[]{};
// String objectId = "fAd2dQDWXiYwEwPAy3xY64wXpAsyTR6X";
//
//
//}
//
//class ScheduleData {
// double actualAmount = 50.5;
// int commodityNum = 1;
// String commoditySpecId = "1308283055693492226";
// String purchaseItemType = "COURSE";
// String classId = "";
// String courseId = "1308283055347929090";
// String courseFeeType = "CLASS_HOUR";
// String courseTag = "NEW";
// String giftUnit = "CLASS_HOUR";
// String unit = "CLASS_HOUR";
//}
//package com.live.cases.baseapi;
//
//import org.testng.annotations.Test;
//
//import java.util.ArrayList;
//import java.util.List;
//import java.util.Map;
//
///**
// * Created by wujie on 2020/09/22
// */
//public class ConsumerSchedule extends ApiBaseTest {
//
// @Override
// protected String getApiName(){
// return "API_createLessonSchedule";
// }
//
// @Test
// public static void testStudentSchedule(){
// String data1 = "{\"arrearsDetails\":[],\"buyerId\":-1,\"signUpVoucherDetails\":[{\"actualAmount\":50.5," +
// "\"commodityNum\":1,\"commoditySpecId\":\"1308283055693492226\",\"purchaseItemType\":\"COURSE\"," +
// "\"classId\":\"\",\"courseId\":\"1308283055347929090\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":100,\"commodityNum\":1," +
// "\"commoditySpecId\":\"1290133296260833282\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
// "\"courseId\":\"1290133295924903937\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"},{\"actualAmount\":660,\"commodityNum\":1," +
// "\"commoditySpecId\":\"1308287173149454338\",\"purchaseItemType\":\"COURSE\",\"classId\":\"\"," +
// "\"courseId\":\"1308287172824862721\",\"courseFeeType\":\"CLASS_HOUR\",\"courseTag\":\"NEW\"," +
// "\"giftUnit\":\"CLASS_HOUR\",\"unit\":\"CLASS_HOUR\"}],\"receivableAmount\":810.5,\"paidAmount\":810.5," +
// "\"studentId\":\"1308415293825691649\",\"paymentFlows\":[{\"paymentType\":\"CASH\",\"paymentAmount\":810.5}]," +
// "\"bizAccountId\":\"1291247057398218754\",\"operationDate\":1600786027972,\"businessOwners\":[]," +
// "\"objectId\":\"fAd2dQDWXiYwEwPAy3xY64wXpAsyTR6X\",\"userCouponIds\":[],\"validVoucher\":true}";
//
// String data2 = "{\"studentBasicRequest\":{\"bakPhoneRemark\":\"DAD\",\"genderEnum\":\"UNKNOWN\",\"name\":\"10000000000\"," +
// "\"onlyAge\":false,\"phone\":\" \",\"phoneRemark\":\"MOM\",\"statusEnum\":\"NORMAL\"}," +
// "\"studentExpandRequest\":{\"attrList\":[]},\"studentHistoryRequest\":{}," +
// "\"studentSaleRequest\":{\"position\":\"UN_SPECIFIED\"}}";
//
// okHttpClient.doPostRequest(url,params,data2,headers);
// okHttpClient.doPostRequest(url,params,data1,headers);
//
//
//
//
// }
// StudentData student = new StudentData();
//
//
//
//}
//
//class StudentData{
// String name;
// String phone;
// String statusEnum = "NORMAL";
// String phoneBak ="99800009999";
// String school ="哇哈哈小学";
// String birthday="1268718248968";
// boolean onlyAge = true;
// String address ="哇哈哈小区3单元";
// String phoneRemark="MOM";
// String gradeName="一年级";
// String genderEnum="MAN";
// String grade="1";
// String bakPhoneRemark="DAD";
// String remark="创建学员";
//}
//
//class AddScheduleData{
// String [] arrearsDetails = new String[]{};
// int buyerId = -1;
// List<Map<String, Object>> signUpVoucherDetails = new ArrayList<>();
//
// public
//
// // signUpVoucherDetails.a
// // signUpVoucherDetails[0]={"actualAmount":50.5,"commodityNum":1,"commoditySpecId":"1308283055693492226","purchaseItemType":"COURSE","classId":"","courseId":"1308283055347929090","courseFeeType":"CLASS_HOUR","courseTag":"NEW","giftUnit":"CLASS_HOUR","unit":"CLASS_HOUR"};
//
//
// //String [] signUpVoucherDetails = new String[]{"actualAmount":50.5,"commodityNum":1,"commoditySpecId":"1308283055693492226","purchaseItemType":"COURSE","classId":"","courseId":"1308283055347929090","courseFeeType":"CLASS_HOUR","courseTag":"NEW","giftUnit":"CLASS_HOUR","unit":"CLASS_HOUR"},{"actualAmount":100,"commodityNum":1,"commoditySpecId":"1290133296260833282","purchaseItemType":"COURSE","classId":"","courseId":"1290133295924903937","courseFeeType":"CLASS_HOUR","courseTag":"NEW","giftUnit":"CLASS_HOUR","unit":"CLASS_HOUR"};
// float receivableAmount;
// float paidAmount;
// String StudentId;
// String bizAccountId;
// String operationDate;
// String [] businessOwners = new String[] {};
// String objectId = "fAd2dQDWXiYwEwPAy3xY64wXpAsyTR6X";
//
//
//}
//
//class ScheduleData{
// double actualAmount = 50.5;
// int commodityNum =1;
// String commoditySpecId = "1308283055693492226";
// String purchaseItemType = "COURSE";
// String classId = "";
// String courseId = "1308283055347929090";
// String courseFeeType = "CLASS_HOUR";
// String courseTag = "NEW";
// String giftUnit = "CLASS_HOUR";
// String unit = "CLASS_HOUR";
//}
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
package com.live.xmutils;
import com.alibaba.fastjson.JSON;
/**
* Created by wujie on 2020/09/29
*/
public class FolderMethod extends ApiBaseTest {
//String data = "{\"size\":10,\"current\":1,\"folderIdType\":\"FOLDER\",\"disk\":\"MYSELF\","\"instId\":\"1290584237476061185\"}";
public String folderIdType = "FOLDER";
public String disk = "MYSELF";
public String instId = "1290584237476061185";
public int size = 10;
public int current = 1;
@Override
protected String getApiName() {
return null;
}
// public String folderIdType;
// public String disk;
// public String instId;
// public int size;
// public int current;
public static String folderList(String disk, int size, int current){
FolderMethod initFolderMethod = new FolderMethod();
initFolderMethod.disk = disk;
initFolderMethod.size = size;
initFolderMethod.current = current;
String data = JSON.toJSONString(initFolderMethod);
//JSONObject jsonBody = doRequest(data);
return data;
}
}
package com.live.xmutils;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.xiaomai.utils.XMBaseTest;
/**
* Created by zhangying on 2020/11/20
*/
public class GetCustomerLiveXMToken extends XMBaseTest {
public void getMsgAuthCode(){
dataApi.setApiModule(ApiModele.CloudClass_customerLive) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("api_login");
super.beforeTest();
JSONObject jsonObject = new JSONObject();
// {
// "accountNo": "15068165765",
// "certificate": "0000",
// "loginType": "PHONE_AUTH_CODE",
// "appTerm": "IOS",
// "userType": "C"
// }
jsonObject.put("accountNo","15068165765");
jsonObject.put("certificate", "0000");
jsonObject.put("loginType", "PHONE_AUTH_CODE");
jsonObject.put("appTerm", "IOS");
jsonObject.put("userType", "C");
System.out.println("jsonObject= " + jsonObject);
okHttpClient.doPostRequest(dataApi.getUrl(),jsonObject.toJSONString(),headers);
// xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers).assetsSuccess(true);
// //
JSONObject responseRes = xmAppApi.getBodyInJSON();
System.out.println("responseRes= " + responseRes);
}
}
package com.live.xmutils;
import com.alibaba.fastjson.JSONObject;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.RandomStringUtil;
import com.xiaomai.utils.XMBaseTest;
import io.restassured.response.Response;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static io.restassured.RestAssured.given;
public class GetFolderData extends XMBaseTest {
public Response saveFolder() {
dataApi.setApiModule(ApiModele.CloudClass_File) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("API_saveFolder") // API 名称 必传
.setEnv("prod") // 运行环境 测试时可指定自己要运行的环境。 不穿默认取系统指定的允许环境
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
// dal.setCase_owner("zhangying")
// .setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
String name = "测试文件夹新增"+ RandomStringUtil.randomString(6); //评分维度名称
Map bodyMap = new HashMap();
bodyMap.put("createUser", "ADMIN");
bodyMap.put("disk", "MYSELF");
bodyMap.put("folderTypeEnum", "FOLDER");
bodyMap.put("instId", "1235115978015883266");
bodyMap.put("name", name);
bodyMap.put("parentId", null);
String bodydata = JSONObject.toJSONString(bodyMap);
// 接口请求 返回responseBody
Response response = given()
.header("Content-Type", "application/json")
.queryParams(params)
.headers(headers)
.body(bodydata)
.when()
.post(dataApi.getUrl())
.then().log().all()
.extract()
.path("result");
return response;
}
public List getFolderList() {
dataApi.setApiModule(ApiModele.CloudClass_File) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("API_folderList") // API 名称 必传
.setEnv("prod") // 运行环境 测试时可指定自己要运行的环境。 不穿默认取系统指定的允许环境
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
super.beforeDataRequest();
Map bodyMap = new HashMap();
bodyMap.put("current", 1);
bodyMap.put("size", 10);
bodyMap.put("disk", "MYSELF");
String bodydata = JSONObject.toJSONString(bodyMap);
// 接口请求 返回responseBody
Response response = given()
.header("Content-Type", "application/json")
.queryParams(params)
.headers(headers)
.body(bodydata)
.when()
.post(dataApi.getUrl())
.then().log().all()
.extract()
.response();
List folderList = new ArrayList();
folderList.add(response.path("result.records"));
return folderList;
}
public String getCommonFolderListFirstId(){
dataApi.setApiModule(ApiModele.CloudClass_File)
.setApiName("API_commonFolderList")
.setLoginUser("zhangYuM_b")
.setTerminal(Terminal.B);
super.beforeDataRequest();
JSONObject jsonObject = new JSONObject();
jsonObject.put("current",1);
jsonObject.put("disk", "COMMON");
jsonObject.put("folderIdType", "FOLDER");
jsonObject.put("instId","1300628703858597889");
jsonObject.put("searchName", null);
jsonObject.put("size", 10);
dataApi.doRequest(RequestType.JSON,dataparams,jsonObject.toJSONString(),dataheadrs).assetsSuccess(true);
JSONObject responseRes = dataApi.getBodyInJSON();
System.out.println(responseRes);
String id = responseRes.getJSONObject("result").getJSONArray("records").getJSONObject(0).getString("id");
return id;
}
}
package com.live.xmutils;
import com.alibaba.fastjson.JSONObject;
import com.live.cases.largeClassLive.LargeClassLiveTools;
import com.live.enums.ApiModele;
import com.live.enums.RequestType;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.apache.commons.lang.StringUtils;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
public class GetLiveCourseData extends XMBaseTest {
@BeforeMethod
public void beforeTest() {
dataApi.setApiModule(ApiModele.CloudClass_B) // API 所属模块 必传 读取配置文件config.properties配置的api地址
.setApiName("API_createLargeClassLive") // API 名称 必传
.setLoginUser("zhangy-b") // http 接口,测试账号 必传
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
super.beforeTest();
}
@Test
public String getLiveCourseData() {
LargeClassLiveTools getLargeClassLiveTools = new LargeClassLiveTools();
JSONObject largeClassLive = getLargeClassLiveTools.buildCreateLargeClassLiveParam();
dataApi.doRequest(RequestType.JSON, params, largeClassLive.toString(), headers);
JSONObject jsonBody = dataApi.getBodyInJSON();
System.out.println("jsonBody = "+jsonBody);
String liveCourseId=jsonBody.getString("result");
System.out.println("liveCourseId = "+liveCourseId);
Assert.assertEquals(jsonBody.getString("success"),"true");
Assert.assertEquals(StringUtils.isNotBlank(jsonBody.getString("result")),true);
return liveCourseId;
}
}
package com.live.xmutils;
import com.xiaomai.client.SSLRestfulClient;
import org.testng.annotations.Test;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
/**
* Created by zhangying on 2020/11/19
*/
public class GetMsgAuthCode {
public static SSLRestfulClient sslhttpclient = new SSLRestfulClient();
// public static OkHttpClient okHttpClient = null;
public static HashMap<String, String> headers =new HashMap<>();
public static List params=new ArrayList() {
};
@Test
public void getMsgAuthCode(){
// dataApi.setApiModule(ApiModele.CloudClass_customerLive) // API 所属模块 必传 读取配置文件config.properties配置的api地址
//// .setApiName("api_msgAuthCode");
// super.beforeTest();
String json="{\n" +
" \"phone\":15068165765,\n" +
" \"serverType\":\"C_LOGIN\"\n" +
"}";
sslhttpclient.doPostRequest("https://gateway.xiaomai5.com/horn/anon/horn/msgAuthCode", params,json,headers);
// okHttpClient.doPostRequest(dataApi.getUrl(),jsonObject.toJSONString(),headers);
// xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers).assetsSuccess(true);
// //
// JSONObject responseRes = xmAppApi.getBodyInJSON();
// System.out.println("responseRes= " + responseRes);
}
// public static void main(String[] args) {
// GetMsgAuthCode getMsgAuthCode= new GetMsgAuthCode();
// getMsgAuthCode.getMsgAuthCode();
//
// }
}
package com.live.xmutils;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.client.BaseTest;
import java.util.List;
/**
* Created by wujie on 2020/09/27
*/
public class StudentMethod extends BaseTest {
public String scheduleId = "1309881741792104449";
public String instId = "1290584237476061185";
public List<String> studentIds;
//public String[] studentIds = new String[]{};
public int size = 10;
public long current = 1;
public String message;
public String success;
public static String addLessonScheduleStu(String scheduleId, String instId, String message, List<String> studentIds){
StudentMethod initStudentMethod= new StudentMethod();
initStudentMethod.scheduleId = scheduleId;
initStudentMethod.instId = instId;
initStudentMethod.studentIds = studentIds;
initStudentMethod.message = message;
String data = JSONObject.toJSONString(initStudentMethod);
return data;
}
}
package com.live.xmutils.baseapi;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.client.BaseTest;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import org.springframework.test.context.ContextConfiguration;
import org.testng.ITestResult;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
/**
* Created by zhangying on 2020/11/17
*/
@ContextConfiguration(locations = {"classpath:/spring-core.xml"})
public abstract class ApiBaseTestFile extends BaseTest {
@BeforeClass
public static void beforeClass() {
BaseTest.beforeClass();
}
@AfterClass
public static void afterClass() {
BaseTest.afterClass();
}
@BeforeMethod
public void beforeTest() {
//设置测试信息:env、Apimodule、Apiname、接口账号信息、端口位
xmAppApi.setApiModule(ApiModele.CloudClass_File) // API 所属模块
.setApiName(getApiName()) // API 名称
// .setEnv("prod") // 运行环境
.setLoginUser("zhangy-b") // 测试账号
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
super.beforeTest();
}
@AfterMethod
public void afterTest(ITestResult result) {
super.afterMethod(result);
}
/**
*
* @return
*/
protected abstract String getApiName();
protected static JSONObject doRequest(String data){
okHttpClient.doPostRequest(url,data,headers);
JSONObject jsonBody = okHttpClient.getBodyInJSON();
return jsonBody;
}
}
package com.live.xmutils.baseapi;
import com.xiaomai.client.BaseTest;
import com.live.enums.ApiModele;
import com.live.enums.Terminal;
import com.xiaomai.utils.XMBaseTest;
import org.testng.ITestResult;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
/**
* Created by zhangying on 2020/11/19
*/
public abstract class CloundClassApiBaseTest extends XMBaseTest {
// public static String instId_C = userInfoParam.getString("instId");
// public static String studentId_C = userInfoParam.getString("studentId");
// static String classId_C = userInfoParam.getString("classId");
@BeforeClass
public static void beforeClass() {
BaseTest.beforeClass();
}
@AfterClass
public static void afterClass() {
BaseTest.afterClass();
}
@BeforeMethod
public void beforeTest() {
//设置测试信息:env、Apimodule、Apiname、接口账号信息、端口位
xmAppApi.setApiModule(ApiModele.CloudClass_apollo) // API 所属模块
.setApiName(getApiName()) // API 名称
// .setEnv(GRAY) // 运行环境
.setLoginUser("zhangyLive-b.gray") // 测试账号
.setTerminal(Terminal.B); // 所属端位(B端,C端,M端等, 必传)
dal.setCase_owner("zhangying")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
// // 预置登录信息
super.beforeTest();
}
protected abstract String getApiName();
@AfterMethod
public void afterTest(ITestResult result) {
super.afterMethod(result);
}
}
\ No newline at end of file
{
"API_getLargeClassLiveList":
{
"apiPath": "/apollo/public/businessLive/getLargeClassLiveList",
"apiContentType": "application/json;charset=utf-8",
"apiName": "获取大班直播课列表",
"desc": "获取大班直播课列表"
},
"API_createLargeClassLive":
{
"apiPath": "/apollo/public/businessLive/createCourse",
"apiContentType": "application/json;charset=utf-8",
"apiName": "新增直播课信息",
"desc": "新增直播课信息"
},
"API_updateCourse":
{
"apiPath": "/apollo/public/businessLive/updateCourse",
"apiContentType": "application/json;charset=utf-8",
"apiName": "修改直播课信息",
"desc": "修改直播课信息"
},
"API_delCourse":
{
"apiPath": "/apollo/public/businessLive/delCourse",
"apiContentType": "application/json;charset=utf-8",
"apiName": "删除直播课信息",
"desc": "删除直播课信息"
},
"API_getStudentList":
{
"apiPath": "/apollo/public/businessLive/getStudentList",
"apiContentType": "application/json;charset=utf-8",
"apiName": "获取直播课次学员列表",
"desc": "获取直播课次学员列表"
},
"API_checkExistStudent":
{
"apiPath": "/apollo/public/businessLive/checkExistStudent",
"apiContentType": "application/json;charset=utf-8",
"apiName": "校验课程中是否存在学员",
"desc": "校验课程中是否存在学员"
},
"API_addCourseStu": {
"apiPath": "/apollo/public/businessLive/addCourseStu",
"apiContentType": "application/json;charset=utf-8",
"apiName": "直播课次新增在读学员",
"desc": "直播课次新增在读学员"
},
"API_moveCourseStu": {
"apiPath": "/apollo/public/businessLive/moveCourseStu",
"apiContentType": "application/json;charset=utf-8",
"apiName": "移除直播课次的指定学员",
"desc": "移除直播课次的指定学员"
},
"API_createLesson": {
"apiPath": "/apollo/public/apollo/createLessonSchedule",
"apiContentType": "application/json;charset=utf-8",
"apiName": "新建视频课",
"desc": "新建视频课"
},
"API_getUserDisk": {
"apiPath": "/apollo/public/apollo/getUserDisk",
"apiContentType": "application/json;charset=utf-8",
"apiName": "获取用户具有权限的盘符,自行判断用户id",
"desc": "获取用户具有权限的盘符,自行判断用户id"
},
"API_folderList": {
"apiPath": "/apollo/public/apollo/folderList",
"apiContentType": "application/json;charset=utf-8",
"apiName": "文件列表,自行判断用户id",
"desc": "文件列表,自行判断用户id"
},
"API_queryLiveAccount": {
"apiPath": "/apollo/public/businessLive/queryLiveAccount",
"apiContentType": "application/json;charset=utf-8",
"apiName": "获取机构的直播间账户列表",
"desc": "获取机构的直播间账户列表"
},
"API_getStudentListWithUseAbleAccount": {
"apiPath": "/business/public/student/getStudentListWithUseAbleAccount",
"apiContentType": "application/json;charset=utf-8",
"apiName": "使用可用帐户获取学生名单",
"desc": "使用可用帐户获取学生名单"
},
"API_coursedigestList": {
"apiPath": "/business/public/course/digestList",
"apiContentType": "application/json;charset=utf-8",
"apiName": "直播课加载学员摘要列表",
"desc": "直播课加载学员摘要列表"
},
"API_commonFolderList": {
"apiPath": "/apollo/public/apollo/commonFolderList",
"apiContentType": "application/json;charset=utf-8",
"apiName": "文件列表,公共文件",
"desc": "文件列表,公共文件"
},
"API_createBigLiveCourse": {
"apiPath": "/apollo/public/businessLive/createCourse",
"apiContentType": "application/json;charset=utf-8",
"apiName": "创建大班直播课",
"desc": "创建大班直播课"
}
}
\ No newline at end of file
{
"API_folderList":
{
"apiPath": "/apollo/public/apollo/folderList",
"apiContentType": "",
"apiName": "获取课次的学生可见文件数",
"desc": "获取课次的学生可见文件数"
},
"API_getUserDisk":
{
"apiPath": "/apollo/public/apollo/getUserDisk",
"apiContentType": "",
"apiName": "加入学习",
"desc": "加入学习"
},
"API_commonFolderList":
{
"apiPath": "/apollo/public/apollo/commonFolderList",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "资料云盘公共文件列表",
"desc": "资料云盘公共文件列表"
},
"API_employeeFolderList":
{
"apiPath": "/apollo/public/apollo/employeeFolderList",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "资料云盘员工文件列表",
"desc": "资料云盘员工文件列表"
},
"API_saveFolder":
{
"apiPath": "/apollo/public/apollo/saveFolder",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "新增文件夹",
"desc": "新增文件夹"
},
"API_renameFolde":
{
"apiPath": "/apollo/public/apollo/renameFolder",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "重命名文件夹",
"desc": "重命名文件夹"
},
"API_multiPartUpload":
{
"apiPath": "/mfs/anon/mfs/multiPartUpload",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "文件夹上传文件",
"desc": "文件夹上传文件"
},
"API_getRelationByRelationId":
{
"apiPath": "/apollo/public/apollo/getRelationByRelationId",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "B端课表管理-课次详情 按关系Id获取关系",
"desc": "B端课表管理-课次详情 按关系Id获取关系"
},
"API_getGetUserDisk":
{
"apiPath": "/apollo/public/apollo/getUserDisk",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "B端直播课 获取用户磁盘",
"desc": "B端直播课 获取用户磁盘"
},
"API_queryCourseTrophy":
{
"apiPath": "/apollo/public/commonLive/queryCourseTrophy",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "APP端查询课程奖杯",
"desc": "APP端查询课程奖杯"
},
"API_getLargeClassLiveList":
{
"apiPath": "/apollo/public/businessLive/getLargeClassLiveList",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "B端查询大班直播列表",
"desc": "B端查询大班直播列表"
},
"API_delCommomFolder":
{
"apiPath": "/apollo/public/apollo/delCommonFolder",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "删除公共文件",
"desc": "删除公共文件"
}
}
\ No newline at end of file
{
"API_getScheduleFileCount":
{
"apiPath": "/apollo/anon/customerApollo/getScheduleFileCount",
"apiContentType": "",
"apiName": "获取课次的学生可见文件数",
"desc": "获取课次的学生可见文件数"
},
"API_joinVideoScheduleByShare":
{
"apiPath": "/apollo/anon/apollo/joinVideoScheduleByShare",
"apiContentType": "",
"apiName": "加入学习",
"desc": "加入学习"
},
"API_stuWatchInfo":
{
"apiPath": "/apollo/anon/apollo/stuWatchInfo",
"apiContentType": "",
"apiName": "学生观看视频数据",
"desc": "学生观看视频数据"
}
}
\ No newline at end of file
{
"API_createLessonSchedule":
{
"apiPath": "/apollo/public/apollo/createLessonSchedule",
"apiContentType": "",
"apiName": "创建视频课",
"desc": "新增一节视频课"
},
"API_getLessonScheduleStuPage":
{
"apiPath": "/apollo/public/apollo/getLessonScheduleStuPage",
"apiContentType": "",
"apiName": "获取学员信息",
"desc": "获取学员信息"
},
"API_editLessonSchedule":
{
"apiPath": "/apollo/public/apollo/editLessonSchedule",
"apiContentType": "",
"apiName": "编辑视频课",
"desc": "修改视频课信息"
},
"API_removeLessonSchedule":
{
"apiPath": "/apollo/public/apollo/removeLessonSchedule",
"apiContentType": "",
"apiName": "删除视频课",
"desc": "删除视频课"
},
"API_lessonScheduleListPage":
{
"apiPath": "/apollo/public/apollo/lessonScheduleListPage",
"apiContentType": "",
"apiName": "获取视频课列表",
"desc": "获取视频课列表"
},
"API_createSignUpVoucher":
{
"apiPath": "/business/public/order/createSignUpVoucher",
"apiContentType": "",
"apiName": "获取视频课列表",
"desc": "获取视频课列表"
},
"API_getLessonScheduleDetail":
{
"apiPath": "/apollo/public/apollo/getLessonScheduleDetail",
"apiContentType": "",
"apiName": "获取课次课次详情",
"desc": "获取课次详情"
},
"API_getLessonStuIdListByScheduleId":{
"apiPath": "/apollo/public/apollo/getLessonStuIdListByScheduleId",
"apiContentType": "",
"apiName": "根据课次id获取学生id",
"desc": "根据课次id获取学生id"
},
"API_addLessonScheduleStu":
{
"apiPath": "/apollo/public/apollo/addLessonScheduleStu",
"apiContentType": "",
"apiName": "给课次添加学员",
"desc": "给课次添加学员"
},
"API_folderList":
{
"apiPath": "/apollo/public/apollo/folderList",
"apiContentType": "",
"apiName": "获取课次的学生可见文件数",
"desc": "获取课次的学生可见文件数"
},
"API_getUserDisk":
{
"apiPath": "/apollo/public/apollo/getUserDisk",
"apiContentType": "",
"apiName": "加入学习",
"desc": "加入学习"
}
}
\ No newline at end of file
{
"api_getLastedVersion":
{
"apiPath": "/apollo/public/version/getLastedVersion",
"apiContentType": "application/json;charset=utf-8",
"apiName": "获取最新版本号",
"desc": "获取最新版本号"
},
"api_addRelation":
{
"apiPath": "/apollo/public/apollo/addRelation",
"apiContentType": "application/json;charset=utf-8",
"apiName": "添加关联文件",
"desc": "添加关联文件"
},
"api_getCourseList":
{
"apiPath": "/apollo/public/businessLive/getCourseList",
"apiContentType": "application/json;charset=utf-8",
"apiName": "获取直播课列表",
"desc": "获取直播课列表"
},
"api_queryLiveAccount":
{
"apiPath": "/apollo/public/businessLive/queryLiveAccount",
"apiContentType": "application/json;charset=utf-8",
"apiName": "查询直播账号",
"desc": "查询直播账号"
},
"api_initXmLive":
{
"apiPath": "/apollo/public/businessLive/initXmLive",
"apiContentType": "application/json;charset=utf-8",
"apiName": "初始化直播间数据",
"desc": "初始化直播间数据"
},
"api_queryStudentByCourseId":
{
"apiPath": "/apollo/public/businessLive/queryStudentByCourseId",
"apiContentType": "application/json;charset=utf-8",
"apiName": "通过课次查询直播学员",
"desc": "通过课次查询直播学员"
},
"api_changeCourseState":
{
"apiPath": "/apollo/public/businessLive/changeCourseState",
"apiContentType": "application/json;charset=utf-8",
"apiName": "改变课程状态",
"desc": "改变课程状态",
},
"api_clientLaunch":
{
"apiPath": "/apollo/public/businessLive/clientLaunch",
"apiContentType": "application/json;charset=utf-8",
"apiName": "启动直播客户端",
"desc": "启动直播客户端"
}
}
\ No newline at end of file
{
"wujie_b": {
"gray": {
"instId": "1290584237476061185",
"accountNo": "15958197956",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1291264680405467138",
"uid": "1291264680439021569",
"userType": "B",
"tid": "1291264680405467138"
},
"prod": {
"instId": "1290584237476061185",
"accountNo": "15958197956",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1291264680405467138",
"uid": "1291264680439021569",
"userType": "B",
"tid": "1291264680405467138"
},
"rc":
{
"instId": "1289141540495237122",
"accountNo": "15958197956",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1291246898799001602",
"uid": "1291246899319095297",
"userType": "B",
"tid": "1291247057398218754"
}
}
}
\ No newline at end of file
{
"api_msgAuthCode":
{
"apiPath": "/horn/anon/horn/msgAuthCode",
"apiContentType": "application/json;charset=utf-8",
"apiName": "直播C端登录获取验证码",
"desc": "直播C端登录获取验证码"
},
"api_login":
{
"apiPath": "/zeus/anon/account/login",
"apiContentType": "application/json;charset=utf-8",
"apiName": "直播C端登录",
"desc": "直播C端登录"
},
"api_getStudentCourseDay":
{
"apiPath": "/apollo/public/customerLive/getStudentCourseDay",
"apiContentType": "application/json;charset=utf-8",
"apiName": "直播C端(每课学堂)课表",
"desc": "直播C端(每课学堂)课表"
},
"API_getStudentInstLinkageList":
{
"apiPath": "/apollo/public/customerLive/getStudentInstLinkageList",
"apiContentType": "application/json;charset=utf-8",
"apiName": "C端获取学生信息列表",
"desc": "C端获取学生信息列表"
},
"API_getScheduleFileCount":
{
"apiPath": "/apollo/public/customerApollo/getScheduleFileCount",
"apiContentType": "application/json;charset=utf-8",
"apiName": "C端课表获取学生信息列表",
"desc": "C端课表获取学生信息列表"
},
"API_getRelationByRelationId":
{
"apiPath": "/apollo/public/customerApollo/getRelationByRelationId",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "C端课表管理-课次详情 按关系Id获取关系",
"desc": "C端课表管理-课次详情 按关系Id获取关系"
},
"API_queryStudentCourse":
{
"apiPath": "/apollo/public/customerLive/queryStudentCourse",
"apiContentType": "application/json;charset=UTF-8",
"apiName": "C端查询学生直播课程",
"desc": "C端查询学生直播课程"
}
}
\ No newline at end of file
# Dev
dev =https://dev-heimdall.xiaomai5.com
#rc
rc=https://rc-heimdall.xiaomai5.com
# gray
gray=https://gray-heimdall.xiaomai5.com
#prod
prod=https://heimdall.xiaomai5.com
# 测试运行环境 本地调试时,可指定调试环境。完成本地调试后,请注释此变量
#runningEnv = rc
testData = \\src\\main\\resources\\dataprovider\\APIcase.xls
# �����˺�
testAccount = /src/main/resources/parameter.json
# ����B�� api �ӿ�
apiCaseData_b = /src/main/resources/apicase/god/api-b.json
god_order_api = /src/main/resources/apicase/god/api-order.json
apiCaseData_c = /src/main/resources/apicase/god/api-c.json
apiCaseData_online = /src/main/resources/apicase/god/api-onlinemall.json
apiCaseData_admin = /src/main/resources/apicase/god/api-admin.json
apiCaseData_stu = /src/main/resources/apicase/god/api-stu.json
apiCaseData_classhour = /src/main/resources/apicase/god/api-classhour.json
god_homepage_api =/src/main/resources/apicase/god/api-homepage.json
god_tam_api =/src/main/resources/apicase/god/api-tam.json
#M��api�ӿ�
apiCaseData_m = /src/main/resources/apicase/earth/api-m.json
# B�� ��У api �ӿ�
zeus_homeworkAPI_b = /src/main/resources/apicase/zeus/homework-b.json
zeus_homework_c = /src/main/resources/apicase/zeus/homework-c.json
# C�� ��У api �ӿ�
zeus_homeworkAPI_c = /src/main/resources/apicase/zeus/homework-miniApp-c.json
# B�� �����?
zeus_punchAPI_b = /src/main/resources/apicase/zeus/punch-b.json
zeus_evaluation = /src/main/resources/apicase/zeus/evaluation.json
zeus_growthArchives = /src/main/resources/apicase/zeus/growthArchives.json
zeus_maimaiC = /src/main/resources/apicase/zeus/maimaiC.json
# Ӫ��B�� api �ӿ�
money_coupon_api = /src/main/resources/apicase/money/api-coupon.json
money_assets_api = /src/main/resources/apicase/money/api-assets.json
money_integral_api = /src/main/resources/apicase/money/api-integral.json
money_form_api = /src/main/resources/apicase/money/api-form.json
money_show_api = /src/main/resources/apicase/money/api-show.json
money_c_api = /src/main/resources/apicase/money/api-c.json
#�ƿ���B��api�ӿ�
apiCaseData_b_cloudclass = /src/main/resources/apicase/cloudclass/api-b.json
# cloudclass api
cloudclass_video_b = /src/main/resources/apicase/cloudclass/api-video-b.json
cloudclass_video_c = /src/main/resources/apicase/cloudclass/api-video-c.json
cloudclass_file_b = /src/main/resources/apicase/cloudclass/api-file-b.json
cloudclass_file_c = /src/main/resources/apicase/cloudclass/api-file-c.json
cloudclass_customerLive_api = /src/main/resources/apicase/cloudclass/customerLive.json
cloudclass_apollo_api = /src/main/resources/apicase/cloudclass/apollo.json
b_web_login_param = p=w&v=v5.4.0&userType=B
b_app_login_paran = p=iOS&xmversion=5.0&b=552595&userType=B&saasV=5.0&vn=5.4.3&deviceVersion=13.4.1&v=5.4.3
//cloudclass api
//B端创建课程
cloudclass_createBigLiveCourse = /src/main/resources/apicase/cloudclass/api-b.json
//c端校验直播课程和学员是否有观看的权限
cloudClass_B_commonFolderList = /src/main/resources/apicase/cloudclass/api-b.json
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<!-- 日志输出的位置 -->
<Properties>
<!-- 保存在当前路径的logs文件夹下 -->
<Property name="basePath">./logs</Property>
</Properties>
<!-- 日志输出的位置 -->
<Appenders>
<!-- filePattern表示滚动一天记录日志命名 -->
<RollingFile name="file" fileName="${basePath}/test.log"
filePattern="${basePath}/test-%d{yyyy-MM-dd}.log">
<PatternLayout charset="UTF-8" pattern="%d{YYY-MM-dd-HH:mm:ss.SSS} %-5level %c{1} -%msg%n" />
<Policies>
<!-- interval="1"基于时间触发RollingFile 表示滚动一天记录日志 -->
<TimeBasedTriggeringPolicy interval="1"
modulate="true" />
<SizeBasedTriggeringPolicy size="10 MB" />
</Policies>
</RollingFile>
<!-- 日志在控制台输出用 Console -->
<Console name="ConsoleOut">
<!-- 日志显示的风格 -->
<PatternLayout pattern="%d{YYY-MM-dd-HH:mm:ss。SSS} %-5level %c{1} -%msg%n" />
</Console>
</Appenders>
<Loggers>
<!-- 日志输出级别为info -->
<Root level="info">
<!-- 前面有定义RollingFile的名称为file -->
<AppenderRef ref="file" />
</Root>
</Loggers>
</Configuration>
\ No newline at end of file
{
"rc-郑方圆测试校区": {
"instid": "1254955459135840257",
"teacherId": "1254955599529701378",
"accountNo": "17326055509",
"certificate": "95b722835cc2b2c059e5fab5121dfd31"
},
"qhy-b": {
"rc": {
"instId": "1235586002279567362",
"instName": "",
"accountNo": "15036537076",
"certificate": "be5cdfd5fd705e761b1e0ca4576f202a",
"aid": "1235586002636570625",
"uid": "1247448452363235329",
"userType": "B",
"tid": "1235586002636570625"
},
"gray": {
"instId": "1247473903852892162",
"instName": "5.0海洋-线上",
"accountNo": "11122233344",
"certificate": "be5cdfd5fd705e761b1e0ca4576f202a",
"aid": "1319261111825911809",
"uid": "852412158686793728",
"userType": "B",
"tid": "1319261111825911809"
},
"prod": {
"instId": "1247473903852892162",
"instName": "5.0海洋-线上",
"accountNo": "15036537076",
"certificate": "be5cdfd5fd705e761b1e0ca4576f202a",
"aid": "1247473905699254274",
"uid": "1247473905762168833",
"userType": "B",
"tid": "1247473905699254274"
}
},
"qhy-miniAppC": {
"rc": {
"accountNo": "13136189060",
"verifyCode": "0000",
"xcxOpenId": "ojJeV5CfHc0xOxQdywIpjRbHdt1s",
"openId": "ojJeV5CfHc0xOxQdywIpjRbHdt1s",
"appId": "wx5c5a1fb71ecab7bc",
"serverType": "HOMEWORK_LOGIN",
"uid": "1250661629796331521",
"wechatAppId": "wx5c5a1fb71ecab7bc",
"hsid": "1250600157659848706"
},
"gray": {
"accountNo": "13136189060",
"verifyCode": "0000",
"xcxOpenId": "oEQMm0f0eQkL4nFsuGyglN1I5mbE",
"openId": "oEQMm0f0eQkL4nFsuGyglN1I5mbE",
"appId": "wxdd6b458500d4c224",
"serverType": "HOMEWORK_LOGIN",
"uid": "1254767773758304258",
"wechatAppId": "wxdd6b458500d4c224",
"hsid": "1254679668497125377"
},
"prod": {
"accountNo": "13136189060",
"verifyCode": "0000",
"xcxOpenId": "oEQMm0f0eQkL4nFsuGyglN1I5mbE",
"openId": "oEQMm0f0eQkL4nFsuGyglN1I5mbE",
"appId": "wxdd6b458500d4c224",
"serverType": "HOMEWORK_LOGIN",
"uid": "1254767773758304258",
"wechatAppId": "wxdd6b458500d4c224",
"hsid": "1254679668497125377"
}
},
"pdd-b":{
"rc": {
"instId": "1278603410197090306",
"instName": "",
"accountNo": "17788889999",
"certificate": "eabd8ce9404507aa8c22714d3f5eada9",
"aid": "1278604160653910017",
"uid": "1062644264711749728",
"userType": "B",
"tid": "1278604160653910017"
},
"dev": {
"instId": "1278603410197090306",
"instName": "",
"accountNo": "17788889999",
"certificate": "eabd8ce9404507aa8c22714d3f5eada9",
"aid": "1288105951240519682",
"uid": "1062644264711749728",
"userType": "B",
"tid": "1288105951240519682"
},
"gray": {
"instId": "1250647839867863042",
"instName": "彭丹机构1",
"accountNo": "17788889999",
"certificate": "eabd8ce9404507aa8c22714d3f5eada9",
"aid": "1250647841801310209",
"uid": "1185813129513742337",
"userType": "B",
"tid": "1250647841801310209"
},
"prod": {
"instId": "1250647839867863042",
"instName": "彭丹机构1",
"accountNo": "17788889999",
"certificate": "eabd8ce9404507aa8c22714d3f5eada9",
"aid": "1250647841801310209",
"uid": "1185813129513742337",
"userType": "B",
"tid": "1250647841801310209"
}
},
"laosy-b": {
"rc": {
"instId": "1251008923612221441",
"instName": "",
"accountNo": "13758175166",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1251008924635574274",
"uid": "1251008924635574274",
"userType": "B",
"tid": "1251008924635574274"
},
"gray": {
"instId": "1235818614175694849",
"instName": "",
"accountNo": "13758175165",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1235818615696302082",
"uid": "1198849954953564161",
"userType": "B",
"tid": "1235818615755022337"
},
"prod": {
"instId": "1235818614175694849",
"instName": "",
"accountNo": "13758175165",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1235818615696302082",
"uid": "1198849954953564161",
"userType": "B",
"tid": "1235818615755022337"
}
},
"laosy-c": {
"rc": {
"appId": "wx5c5a1fb71ecab7bc",
"openId": "o_D78s35En4vNjg-JDEYWTnZeysk",
"accountNo": "13758175166",
"xmtoken": "59c45bf44c0e4f7bb7ba861c9ab1f4ef",
"p": "wechat",
"userType": "B"
},
"gray": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xLHGFzCucSRzVWIEpYzu-98",
"accountNo": "13758175166",
"xmtoken": "3b08b10575f944548fe35e05ef923aff",
"p": "wechat",
"userType": "B"
},
"prod": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xLHGFzCucSRzVWIEpYzu-98",
"accountNo": "13758175166",
"xmtoken": "3b08b10575f944548fe35e05ef923aff",
"p": "wechat",
"userType": "B"
}
},
"liling_m": {
"rc": {
"accountNo": "15773857510",
"uid": "130",
"userType": "M",
"deptpath": "/1/7"
}
},
"xuyamei_m": {
"rc": {
"accountNo": "13120057004",
"uid": "129",
"userType": "M",
"deptpath": "/1"
}
},
"wunuo-c": {
"rc": {
"appId": "wx5c5a1fb71ecab7bc",
"openId": "o_D78sz8fQvpleugk9M_Sa9Obr8c",
"accountNo": "15168273820",
"xmtoken": "2f906a84073545b58e48ba12b232fd0e",
"p": "wechat",
"userType": "B"
},
"gray": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xEVpZN0wi8zzBAkKofutKJM",
"accountNo": "15168273820",
"xmtoken": "2136259371bf4d2590f8503045480ae5",
"p": "wechat",
"userType": "B"
},
"prod": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xEVpZN0wi8zzBAkKofutKJM",
"accountNo": "15168273820",
"xmtoken": "2136259371bf4d2590f8503045480ae5",
"p": "wechat",
"userType": "B"
}
},
"fym-b": {
"rc": {
"instId": "1285046970677403650",
"instName": "",
"accountNo": "15090373758",
"certificate": "96d0b7696590408b67e74d38b2e082c4",
"aid": "1285049194239094785",
"uid": "1282568615902257153",
"userType": "B",
"tid": "1285049194239094785"
},
"prod": {
"instId": "1301797436402806785",
"instName": "",
"accountNo": "19941192167",
"certificate": "bb426cdfa72944e46068858aca0509ea",
"aid": "1303609085537103873",
"uid": "1303609085558075394",
"userType": "B",
"tid": "1303609085537103873"
}
},
"fym-miniAppC": {
"prod": {
"accountNo": "17130047572",
"verifyCode": "0000",
"xcxOpenId": "oEQMm0TrWEsJYHwzd_ktEiIUI6iU",
"openId": "oEQMm0TrWEsJYHwzd_ktEiIUI6iU",
"appId": "wxdd6b458500d4c224",
"serverType": "HOMEWORK_LOGIN",
"uid": "1184392893538938881",
"wechatAppId": "wxdd6b458500d4c224",
"hsid": "945945665270186113"
}
},
"wunuo-b": {
"rc": {
"instId": "1253260325264764929",
"instName": "小麦教育示例校区3820",
"accountNo": "18893823730",
"certificate": "5416d7cd6ef195a0f7622a9c56b55e84",
"aid": "1260390405673492481",
"uid": "1260390405715435521",
"userType": "B",
"tid": "1260390405673492481"
},
"gray": {
"instId": "1212271770835783682",
"instName": "乌诺教育",
"accountNo": "18893823730",
"certificate": "5416d7cd6ef195a0f7622a9c56b55e84",
"aid": "1212271774678065154",
"uid": "1254237095870377985",
"userType": "B",
"tid": "1212271774740979713"
},
"prod": {
"instId": "1212271770835783682",
"instName": "乌诺教育",
"accountNo": "18893823730",
"certificate": "5416d7cd6ef195a0f7622a9c56b55e84",
"aid": "1212271774678065154",
"uid": "1254237095870377985",
"userType": "B",
"tid": "1212271774740979713"
}
},
"adu-b": {
"rc": {
"instId": "1315442439895572481",
"instName": "B杜4.0校区",
"accountNo": "10189914803",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1315442485573787650",
"uid": "1315442468761636866",
"userType": "B",
"tid": "1315442485573787650"
},
"gray1": {
"instId": "1298599595305504770",
"instName": "dudu4.0升级",
"accountNo": "11100000111",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1298600807872966658",
"uid": "1145988285645361153",
"userType": "B",
"tid": "1298600807872966658"
},
"prod1": {
"instId": "1298599595305504770",
"instName": "dudu4.0升级",
"accountNo": "11100000111",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1298600807872966658",
"uid": "1145988285645361153",
"userType": "B",
"tid": "1298600807872966658"
},
"gray": {
"instId": "1298599595305504778",
"instName": "B杜4.0校区",
"accountNo": "10189914803",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1298601284031328257",
"uid": "1315948297713008641",
"userType": "B",
"tid": "1298601284031328257"
},
"prod": {
"instId": "1298599595305504778",
"instName": "B杜4.0校区",
"accountNo": "10189914803",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1298601284031328257",
"uid": "1315948297713008641",
"userType": "B",
"tid": "1298601284031328257"
}
},
"wangxue_b": {
"rc": {
"instId": "1289141540495237122",
"instName": "5.0旗舰版测试校区(王雪)",
"accountNo": "16657117396",
"userType": "B",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"teacherId": "1289142308318609409",
"tid": "1289142308318609409",
"aid": "1289142308318609409",
"uid": "1285049132800929794"
},
"prod": {
"instId": "1290584237476061185",
"instName": "X5.0-旗舰-咏雪001(自动化专用)",
"accountNo": "10000000166",
"userType": "B",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"teacherId": "1329387087030448130",
"tid": "1329387087030448130",
"aid": "1329387087030448130",
"uid": "1067303041666909248"
}
},
"wujie_b": {
"gray": {
"instId": "1290584237476061185",
"accountNo": "15958197956",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1291264680405467138",
"uid": "1291264680439021569",
"userType": "B",
"tid": "1291264680405467138"
},
"prod": {
"instId": "1290584237476061185",
"accountNo": "15958197956",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1291264680405467138",
"uid": "1291264680439021569",
"userType": "B",
"tid": "1291264680405467138"
},
"rc":
{
"instId": "1289141540495237122",
"accountNo": "15958197956",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1291246898799001602",
"uid": "1291246899319095297",
"userType": "B",
"tid": "1291247057398218754"
}
},
"zhangy-b": {
"gray": {
"instId": "1235115978015883266",
"instName": "5.0莹自动化测试机构",
"accountNo": "15068165765",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1235115979394306049",
"uid": "1298871716164775938",
"userType": "B",
"tid": "1235115979473997826"
},
"prod": {
"instId": "1235115978015883266",
"instName": "5.0莹自动化测试机构",
"accountNo": "15068165765",
"certificate": "9cbf8a4dcb8e30682b927f352d6559a0",
"aid": "1235115979394306049",
"uid": "1298871716164775938",
"userType": "B",
"tid": "1249975464775172097",
"teacherId": "1235115979473997826"
},
"rc": {
"instId": "1240164194752700418",
"accountNo": "15068165765",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1240164231947661313",
"uid": "976651264471335012",
"userType": "B",
"tid": "1240164231947661313"
}
},
"zhangy-c": {
"gray": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xH_AjXMxX-vc02mv0EAPAds",
"accountNo": "15068165765",
"xmtoken": "04d2a690c2e24bd4a7ba5dccf623a85d",
"p": "wechat",
"userType": "C"
},
"prod": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xH_AjXMxX-vc02mv0EAPAds",
"accountNo": "15068165765",
"xmtoken": "04d2a690c2e24bd4a7ba5dccf623a85d",
"p": "wechat",
"userId": "1113703155587219458",
"userType": "C"
}
},
"zhangy-miniAppC": {
"rc": {
"accountNo": "15068165765",
"verifyCode": "0000",
"xcxOpenId": "ojJeV5BN-AcP2NxZ02Yr-pP496kY",
"openId": "ojJeV5BN-AcP2NxZ02Yr-pP496kY",
"appId": "wx5c5a1fb71ecab7bc",
"serverType": "HOMEWORK_LOGIN",
"uid": "976697509030133888",
"wechatAppId": "wx5c5a1fb71ecab7bc",
"hsid": "976671034683949156"
},
"prod": {
"accountNo": "15068165765",
"verifyCode": "0000",
"xcxOpenId": "oEQMm0TrWEsJYHwzd_ktEiIUI6iU",
"openId": "oEQMm0euKxO3IvzwhwuS-CuGSpqE",
"appId": "wxdd6b458500d4c224",
"serverType": "HOMEWORK_LOGIN",
"uid": "1113703155587219458",
"wechatAppId": "wxdd6b458500d4c224",
"hsid": "970538778663845985"
}
},
"qhy-maimai-c": {
"gray": {
"appId": "wxdd6b458500d4c224",
"openId": "oEQMm0f0eQkL4nFsuGyglN1I5mbE",
"accountNo": "13136189060",
"xmtoken": "6035e8d5c2b34ea0b49c8b88651f92f4",
"p": "wechat",
"userType": "C"
}
},
"NHX_b": {
"prod": {
"instId": "1235818358426509313",
"accountNo": "15210636896",
"certificate": "afdd0b4ad2ec172c586e2150770fbf9e",
"aid": "1235818360670035970",
"uid": "1141193579722416129",
"userType": "B",
"tid": "1235818360728756225"
},
"gray_b": {
"instId": "1235818358426509313",
"accountNo": "15210636896",
"certificate": "afdd0b4ad2ec172c586e2150770fbf9e",
"aid": "1235818360670035970",
"uid": "1141193579722416129",
"userType": "B",
"tid": "1235818360728756225"
},
"rc_b":
{
"instId": "1214011838628593666",
"accountNo": "15210636896",
"certificate": "afdd0b4ad2ec172c586e2150770fbf9e",
"aid": "1214011842058645506",
"uid": "1143364813621370881",
"userType": "B",
"tid": "1214011842255777793"
}
},
"NHX_c": {
"prod": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xM3wWKctt1Kjc6lZxOZRKFo",
"accountNo": "15210636896",
"xmtoken": "4340a861f66b44c9a4610932e2ab8c3e",
"p": "wechat",
"userId": "1145612151844098049",
"userType": "C"
},
"gray_c": {
"appId": "wxdd6b458500d4c224",
"openId": "oj-c9xM3wWKctt1Kjc6lZxOZRKFo",
"accountNo": "15210636896",
"xmtoken": "4340a861f66b44c9a4610932e2ab8c3e",
"p": "wechat",
"userId": "1145612151844098049",
"userType": "C"
},
"rc_c": {
"appId": "wx5c5a1fb71ecab7bc",
"openId": "o_D78s8KTN8rd1Wnd3XTg80Mtxx0",
"accountNo": "15210636896",
"xmtoken": "4340a861f66b44c9a4610932e2ab8c3e",
"p": "wechat",
"userId": "1144893212540801025",
"userType": "C"
}
},
"NHX_client": {
"prod": {
"Content-Type": "application/json",
"aid": "1235818360670035970",
"bizAccountId": "1235818360670035970",
"deviceType": "LIVE_CLIENT",
"instId": "1235818358426509313",
"p": "w",
"tid": "1235818360728756225",
"uid": "1141193579722416129",
"userId": "1141193579722416129",
"userType": "B",
"v": "v4.26.0",
"vn": "1.8.1.0",
"xmversion": "V_50",
"User-Agent": "Mozilla/5.0"
},
"gray_client": {
},
"rc_client": {
}
},
"NHX_app": {
"prod": {
"user-agent": "XM_C(HUAWEI;JKM-AL00b)",
"vc": "55",
"userid": "1145612151844098049",
"devicetype": "android",
"v": "2.1.2.55.495",
"vn": "5.0.0",
"accountNo": "15210636896",
"certificate": "0000",
"loginType": "PHONE_AUTH_CODE",
"appTerm": "ANDROID",
"userType": "C"
},
"gray_app": {
},
"rc_app": {
}
},
"zhangy-myClassC": {
"prod": {
"appId": "wxdd6b458500d4c224",
"openId": "oEQMm0f0eQkL4nFsuGyglN1I5mbE",
"accountNo": "13136189060",
"xmtoken": "6035e8d5c2b34ea0b49c8b88651f92f4",
"p": "wechat",
"userType": "C"
},
"gray": {
"appId": "wxdd6b458500d4c224",
"openId": "oEQMm0f0eQkL4nFsuGyglN1I5mbE",
"accountNo": "13136189060",
"xmtoken": "6035e8d5c2b34ea0b49c8b88651f92f4",
"p": "wechat",
"userType": "C"
}
},
"zhangYuM_b": {
"rc": {
"机构id": "",
"instId": "1289141540495237122",
"accountNo": "15656960812",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1320980733339443202",
"uid": "1320980733381386241",
"userType": "B",
"tid": "1320980733339443202"
},
"prod": {
"instId": "1300628703858597889",
"accountNo": "15656960812",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1323235986786807809",
"uid": "1323235986807779330",
"userType": "B",
"tid": "1323235986786807809"
}
},
"zhangyLive-b": {
"prod": {
"instId": "1235115978015883266",
"accountNo": "15068165765",
"certificate": "290112bfbde696fcb91284bba1e2655b",
"aid": "1235115979394306049",
"uid": "1298871716164775938",
"userType": "B",
"tid": "1235115979473997826"
}
},
"zhangy-app-c": {
"prod": {
"accountNo": "15068165765",
"certificate": "0000"
}
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
">
<context:component-scan base-package="com.xiaomai.cases"></context:component-scan>
<!-- <context:property-placeholder location="classpath:/application.properties" />-->
<!--<bean id="loginInfo" class="com.xiaomai.base.CommonRequestParameters"></bean>-->
<bean id="commonLoginInfoMap" class="com.xiaomai.utils.CommonLoginInfo"></bean>
<bean id="springContextUtil" class="com.xiaomai.utils.SpringContextUtil"></bean>
</beans>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="xm-autotest-live" parallel="methods" thread-count="20" data-provider-thread-count="5" >
<listeners>
<listener class-name="com.xiaomai.client.RetryListener" />
<listener class-name="com.xiaomai.client.TestListener" />
<listener class-name="com.xiaomai.client.ExtentTestNGIReporterListener"/>
</listeners>
<!-- 保证classes 文件优先执行 -->
<!--<test name="makedata" preserve-order="true" verbose="3">
<classes>
<class name="com.xiaomai.cases.god.graden.SaveStudentAPI"/>
</classes>
</test>-->
<test name="apollo" preserve-order="true" verbose="3">
<packages>
<package name="com.live.cases.apollo"></package>
</packages>
</test>
<test name="fileManage" preserve-order="true" verbose="3">
<packages>
<package name="com.live.cases.fileManage"></package>
</packages>
</test>
<test name="interactionLive" preserve-order="true" verbose="3">
<packages>
<package name="com.live.cases.interactionLive"></package>
</packages>
</test>
<test name="largeClassLive" preserve-order="true" verbose="3">
<packages>
<package name="com.live.cases.largeClassLive"></package>
</packages>
</test>
</suite>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment