import unittest import webdriver import time class Test(unittest.TestCase): @classmethod def setUpClass(self): cap = {} cap['platformName'] = 'Android' cap['platformVersion'] = '4.4.2' cap['deviceName'] = '7N2SSE158P001892' cap['noReset'] = 'noReset'…
package myTest; import static org.junit.Assert.*; import io.appium.java_client.android.AndroidDriver; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import…
利用unittest测试框架可以编写测试用例,执行方式分两大类:利用main方法和利用testsuite,其中利用测试套件来组织测试用例可以有4种写法. 在此之前,先了解几个概念 TestCase:所有测试用例的基本类,给一个测试方法的名字,就会返回一个测试用例实例: TestSuite:组织测试用例的实例,支持测试用例的添加和删除,最终将传递给  testRunner进行测试执行: TextTestRunner:进行测试用例执行的实例,其中Text的意思是以文本形式显示测试结果.测试的结果会保…
unittest 当中为我们提供了许多加载用例的方法,这里说下常用的两种方法...推荐使用第二种 第一种加载测试用例的方法:使用加载器加载两个模块 需要把所有的模块加载到套件中 那么就可以自动的运行所有的模块 执行顺序是按照导入测试用例的先后来执行的,先执行 num_multi,在执行 num_add import unittest # 导入写好的测试用例,可以使用 as 重新命名更加简短方便 from Python_0715_unittest import lemon_06_unittest_…
测试功能:博客园首页网站分类的一级菜单链接和二级菜单链接的点击. 遇到的问题: 1.循环点击二级菜单时,点击了一个一级菜单下的第一个二级菜单后,页面会刷新,再定位同一个一级菜单次下的第二个二级菜单时, 会报错:找不到第二个二级菜单,这时需要对一级菜单重新定位赋值: 2.当一级菜单下的二级菜单太多时,在页面的不可见区域,这时会报错:element not interactable,这时需要滑动滚动条. # coding=utf-8 from selenium import webdriver im…
1.一个脚本是一个完整的场景,从用户登陆操作到用户退出系统关闭浏览器.2.一个脚本脚本只验证一个功能点,不要试图用户登陆系统后把所有的功能都进行验证再退出系统3.尽量只做功能中正向逻辑的验证,不要考虑太多逆向逻辑的验证,逆向逻辑的情况很多(例如手号输错有很多种情况) ,验证一方面比较复杂,需要编写大量的脚本,另一方面自动化脚本本身比较脆弱,很多非正常的逻辑的验证能力不强. (我们尽量遵循用户正常使用原则编写脚本即可)4.脚本之间不要产生关联性,也就是说编写的每一个脚本都是独立的,不能依赖或影响其…
import io.appium.java_client.android.AndroidDriver; import io.appium.java_client.android.AndroidElement; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.junit.Test; import org.openqa.selenium.Point; impo…
1...........................我有空再补…
接口文档已经提供了,requests库.unittest单元测试框架也已经介绍过,笔者相信读者朋友已经可以独立编写接口自动化测试用例了.但是有一些细节,我们需要聊一下.比如我们写登录接口测试用例,用户名为空.密码为空.用户名错误.密码错误.用户名密码都正确,假设我们只编写这几条测试用例,我们一般的做法如下代码所示: # -*- coding: utf-8 -*- import requests import unittest from nose_parameterized import para…
1.为什么要写代码实现接口自动化 大家知道很多接口测试工具可以实现对接口的测试,如postman.jmeter.fiddler等等,而且使用方便,那么为什么还要写代码实现接口自动化呢?工具虽然方便,但也不足之处: 测试数据不可控制 接口测试本质是对数据的测试,调用接口,输入一些数据,随后,接口返回一些数据.验证接口返回数据的正确性.在用工具运行测试用例之前不得不手动向数据库中插入测试数据.这样我们的接口测试是不是就没有那么"自动化了". 无法测试加密接口 这是接口测试工具的一大硬伤,如…