受新冠疫情影响,笔者被“困”在湖北老家七十余天,于4月1号(愚人节)这天,终于返回到广州。当前国内疫情基本已趋于平稳,但全球疫情整体势态仍在持续疯涨,累计确诊病例已近80万人。祈祷这场全球性灾难能尽早得到控制,让大家的生活早日恢复正常。同时呼吁,全体读者,在当前的疫情势态下,大家仍然不能放松警惕,时刻做好个人防护工作。 对于忠者的读者,相信都已经知道了,笔者的新书《自动化测试实战宝典:Robot Framework...
这个错误,每次都犯这种低级错误,我怎么这么菜! # 创建测试集合suite=unittest.TestSuite # 报错就是因为这个没有加括号正确代码: suite=unittest.TestSuite()再贴一下unittest框架做单元测试的步骤吧一、要测试的功能:比如说注册,函数名register,写在lianxi文件夹里面哦 users = [{user: python, password: 123456}]def register(username, password1, password2): # 注册功能 for user in users: # 遍历出所有账号,...
理论:https://www.runoob.com/python/python-func-eval.html eval():用来执行一个字符串表达式,并返回表达式的值。 在实际中的应用举例:from api.alert_info_controller.api_analysisType import ApiAnalysisTypeclass TestAnalysisType:def test_analysisType(self):res = ApiAnalysisType().analysisType()str = "res.json()[data] is not None"assert res.status_code == 200assert eval(str) # 此时会返回True或者Fals...
实例:对加减乘除法进行编写自动化测试用例 1.首先安装好pytest,其他文章中有讲到 2.创建一个test的project,根据pageobject模式创建一个base_calcu的基础模块,存放加减乘除方法;创建一个Calcu类。如下图: 3.创建test_case project用来存放测试用例, 4.项目中的创建 READEME.md,用来描述项目,是项目的主介绍文件5.创建.gitignore文件 首先安装插件.gitignore,相关配置及如何使用插件忽略不必要的提交文件,请参考: https...
#!/usr/local/bin/python3.7""" @File : baidu_translate.py @Time : 2020/03/28 @Author : Mozili"""import requests import random import hashlib import urllib import jsonclass BaiduTranslate(object):def __init__(self,word):# 需要翻译的元素self.q = word# 翻译源语言self.fromLang = en# 译文语言self.toLang = zh# 通用翻译API HTTP地址self.translate_api_url = http://api.fanyi.baidu.com/api/trans/...
方法一:# 创建测试运行程序 runner = unittest.TextTestRunner() runner.run(suite)方法二:# 使用BeautifulReport来执行测试套件中的用例,并生成报告 from BeautifulReport import BeautifulReport br = BeautifulReport(suite) br.report("第一份测试报告","brreport.html",report_dir=r"C:\project\py27_class\py27_01day")UI效果: 方法三:# 使用 HTMLTestRunner来生成测试报告 # suite = unittest.defaultTestLoader.dis...
# 第一步:创建测试套件suite = unittest.TestSuite()# 第二步:加载测试用例到测试套件# 第一种:通过测试用例类去加载 from py27_14day.testcases import LoginTestCase loader = unittest.TestLoader() suite.addTest(loader.loadTestsFromTestCase(LoginTestCase))# 第二种:通过测试用例模块去加载 # 用例加载器对象 from py27_14day import testcases loader = unittest.TestLoader() suite.addTest(loader.loadTestsFromMod...
import time import datetime # 测试函数运行时间 def cal_time(fn):"""计算性能的修饰器"""def wrapper(*args,**kwargs):starTime = time.time()f = fn(*args,**kwargs)endTime = time.time()print(%s() runtime:%s ms % (fn.__name__, 1000*(endTime - starTime)))return freturn wrapper @cal_time def test():print("开始计算程序运行时间-----------")for i in range(1000000):i = i +1 if __name__ == "__main__":test()调用...
本人在工作中实际接触的几种测试框架,特意网上找了下几种框架的对比,个人还是比较推荐使用pytest。 测试框架什么是框架? 框架(Framework)是整个或部分系统的可重用设计,框架是用来解决代码的组织及运行控制问题的。 在我们编写自动化脚本的时候,经常需要读取配置文件,读取数据文件,发送请求,记录日志,连接并对比数据库数据。每个脚本里都重写一遍各种方法不仅工作量大而且易错。所以我们需要把公共的方法提取出来,封装成...
iOS自动化测试,如何定位到手机上要更换的头像呢? 方法是通过坐标来定位点击更换: 两种方法:1、TouchAction(self.driver).press(x=0, y=466).release().perform() ? ? 需要导入TouchAction()方法 2、self.driver.tap([(249,466)],500) ? ? 需要加延迟:time.sleep(x) 注:完整代码参考:https://www.cnblogs.com/lxmtx/p/12499303.html
iOS自动化测试过程中,经常遇到无法通过d、name或者xpath定位元素的问题,那么该如何解决这个问题呢? 使用以下两种方式均可:1、TouchAction(self.driver).press(x=0, y=466).release().perform() ? ? 使用该方法时需要导入TouchAction()方法,即: ? ? from appium.webdriver.common.touch_action import TouchAction ? ? 那么坐标是如何获取的呢? ? ? 开启appium,连接到app,然后点击具体元素可以显示某个元素的具体坐标x,y...
1、通过unittest.main()来执行测试用例的方式 1 import unittest2 3 4 class Test1(unittest.TestCase):5 def setUp(self) -> None:6 print("我是每一个测试用例执行前执行")7 8 def tearDown(self) -> None:9 print("我是每一个测试用例执行后执行") 10 11 def test2(self): 12 print("我是第一个测试用例") 13 14 def test3(self): 15 print("我是第二个测试用例") 16 17 1...
定义执行用例开始、结束,写入公共模块中,脚本如下: myunit.pyimport unittest from TB_test.common.TB_caps import appium_desired import loggingclass startend(unittest.TestCase):def setUp(self):logging.info("=====setUp=====")self.driver=appium_desired()def tearDown(self):logging.info("=====tearDown=====")self.driver.quit()测试用例: test_login.pyimport unittest from TB_test.common.myunit import starte...
测试工程师技能python执行插入数据操作 1、通常数据库操作常见的操作有数据查询,修改,添加,删除等。大多数在Navicat下都可以执行,在数据库客户端下预览和操作都比较方便。实际使用过程中,添加数据会经常遇到需要批量添加的情况,这时候使用Navicat就没有那么方便了。 2、使用python插入数据和查询数据原理上是一样的。首先获取插入数据库的语句。 3、通过Navicat获得插入的数据库语句,找到目地数据表,右击表中数据,选择如下...
1.下载allure http://allure.qatools.ru/ 2.需要java8 所以先安装java 3.找到allure bin目录配置环境变量 4.安装命令安装pip3 install allure-pytest各项参数介绍 import pytest import allure @allure.feature("类级别标签") class TestAllure:@allure.title("用例1")@allure.description("我是备注执行测试用例1的结果是成功")@allure.story("方法级别标签1")def test_1(self):print("test_1")@allure.title("用例2")@allure.des...