android UiAutomator一个完整的个人信息修改测试用例

本文介绍了一套使用UIAutomator编写的Android个人信息修改的完整自动化测试用例,包括启动应用、检查登录状态、修改名字、设置年级、修改科目、修改学历、修改毕业院校、修改专业、修改简介和教学特点等步骤,每个步骤中包含详细的断言来验证修改是否成功。
摘要由CSDN通过智能技术生成

上周写了一个班级功能的测试用例,这周完成了个人信息的测试用例,刚试过,没什么问题,写出来分享一下,烦请指正。

public void myInfo() throws UiObjectNotFoundException {//完整个人信息测试

startApp();
checkLog();
alterName();
setGrade();
setSubject();
setSex();
alterTeachAge();
setIdentity();
setEducation();
alterUniversity();
alterSpecialty();
alterIntroduction();
alterTeachingFeature();

}

下面是具体的方法。

public void startApp() throws UiObjectNotFoundException {//启动app
UiDevice.getInstance().pressHome();
UiDevice.getInstance().pressHome();
clean();//清理后台程序
getUiObjectByText("点知教育").clickAndWaitForNewWindow();//打开app
outputNotable("app启动了!");
}

public void checkLog() throws UiObjectNotFoundException{//检查登录立即登录
setShort();
boolean log = true;
while(log){
UiObject me = new UiObject(new UiSelector().text("我"));
if (me.exists()) {//检查是否登录
outputNotable("已经登录了!");
log = false;
}else{
UiObject login = new UiObject(new UiSelector().resourceId("com.dianzhi.teacher.school:id/et_user"));
if (login.exists()) {//检查是否进入登录界面
login();//执行登录方法
Date start = new Date();
UiObject me1 = new UiObject(new UiSelector().text("我"));
while(!me1.exists()){//等待进入首页
sleep(100);
Date now = new Date();
long x = now.getTime() - start.getTime();
if (x>10000) {//超时提醒失败
outputNotable("登录失败!");
break;
}
}
}
}
}
setLong();
}

public void alterName() throws UiObjectNotFoundException{//修改名字
setShort();
getUiObjectByText("我").clickAndWaitForNewWindow();
getUiObjectByText("个人资料 > ").clickAndWaitForNewWindow();
String name = getUiObjextByResourceId("com.dianzhi.teacher.school:id/ed_name_my_infomation_activity").getText();
getUiObjectByText("老师:").clickAndWaitForNewWindow();
pressTimes(KeyEvent.KEYCODE_DEL, 6);
int a = new Random().nextInt(120);
if (a<40 && a >= 0) {
writeText("测试一");
getUiObjectByText("完成").clickAndWaitForNewWindow();
if (name == "测试一"){
UiDevice.getInstance().pressBack();
}else{
getUiObjectByText("保存").clickAndWaitForNewWindow();
}
getUiObjectByText("个人资料 > ").clickAndWaitForNewWindow();
String newname =  getUiObjextByResourceId("com.dianzhi.teacher.school:id/ed_name_my_infomation_activity").getText();
assertEquals("修改名字失败!", "测试一", newname);
outputNotable("修改名字成功!");
UiDevice.getInstance().pressBack();
}else if (a<80 && a >= 40) {
writeText("测试二");
getUiObjectByText("完成").clickAndWaitForNewWindow();
if (name == "测试二"){
UiDevice.getInstance().pressBack();
}else{
getUiObjectByText("保存").clickAndWaitForNewWindow();
}
getUiObjectByText("个人资料 > ").clickAndWaitForNewWindow();
String newname =  getUiObjextByResourceId("com.dianzhi.teacher.school:id/ed_name_my_infomation_activity").getText();
assertEquals("修改名字失败!", "测试二", newname);
outputNotable("修改名字成功!");
UiDevice.getInstance().pressBack();
}else if (a<120 && a >= 80) {
writeText("测试三");
getUiObjectByText("完成").clickAndWaitForNewWindow();
if (name == "测试三"){
UiDevice.getInstance().pressBack();
}else{
getUiObjectByText("保存").clickAndWaitForNewWindow();
}
getUiObjectByText("个人资料 > ").clickAndWaitForNewWindow();
String newname =  getUiObjextByResourceId("com.dianzhi.teacher.school:id/ed_name_my_infomation_activity").getText();
assertEquals("修改名字失败!", "测试三", newname);
outputNotable("修改名字成功!");
UiDevice.getInstance().pressBack();

setLong();
}

public void setGrade() throws UiObjectNotFoundException{//随机设置年级
setShort();
getUiObjectByText("个人资料 > ").clickAndWaitForNewWindow();
String grade = getUiObjextByResourceId("com.dianzhi.teacher.school:id/class_tv").getText();
getUiObjectByText("年级:").clickAndWaitForNewWindow();
int num = new Random().nextInt(3);
switch (num) {
case 0:
getUiObjectByText("初中").clickAndWaitForNewWindow();
getUiObjectByText("保存"

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值