selenium环境
1, python
2, chrom浏览器
3, chromdriver
4, selenium包
5, pycharm
基本代码风格
from selenium import webdriver #导入selenium包
from selenium.webdriver.common.keys import Keys
driver=webdriver.Chrome() # 创建实例
driver.get('https://www.baidu.com/') # 通过get方式打开网址
driver.find_element_by_xpath('//*[@id="kw"]').send_keys('selenium') # 输入文字
driver.send_keys(Keys.ENTER) # 按下enter键
driver.quit() # 退出
用例的基本要求
1 用例的灵魂 – 断言
2 用例的管理 – 管理工具
3 用例的输入 – 测试报告
4 用例的健壮性–封装
5 用例的报告 – 日志
改进:
from selenium import webdriver #导入selenium包
from selenium.webdriver.common.keys import Keys
import unittest
import time
from py._xmlgen import html
import pytest
class test(unittest.TestCase):
# def testcase01(self):
# driver = webdriver.Chrome() # 创建实例
# driver.get('https://www.baidu.com/') # 通过get方式打开网址
# driver.find_element_by_xpath('//*[@id="kw"]').send_keys('selenium') # 输入文字
# driver.quit() # 退出
def testcase02(self):
driver = webdriver.Chrome() # 创建实例
driver.get('https://www.baidu.com/') # 通过get方式打开网址
driver.find_element_by_xpath('//*[@id="kw"]').send_keys('selenium') # 输入文字
driver.find_element_by_xpath('//*[@id="su"]').click() # 按下搜索键
time.sleep(2)
asserttext = driver.find_element_by_xpath('//*[@id="container"]/div[2]/div/div[2]/span').text
print(asserttext)
self.assertIn('百度为您找到相关结果',asserttext,'没有找到') #断言判断a是否在b中,在b中则测试用例通过。否则打印失败语句
# driver.quit() # 退出
if __name__ == '__main__':
unittest.main()
断言:
- assertEqual(a,b,[msg=‘测试失败时打印的信息’]): 断言a和b是否相等,相等则测试用例通过。
- assertNotEqual(a,b,[msg=‘测试失败时打印的信息’]): 断言a和b是否相等,不相等则测试用例通过。
- assertTrue(x,[msg=‘测试失败时打印的信息’]): 断言x是否True,是True则测试用例通过。
- assertFalse(x,[msg=‘测试失败时打印的信息’]): 断言x是否False,是False则测试用例通过。
- assertIs(a,b,[msg=‘测试失败时打印的信息’]): 断言a是否是b,是则测试用例通过。
- assertNotIs(a,b,[msg=‘测试失败时打印的信息’]): 断言a是否是b,不是则测试用例通过。
- assertIsNone(x,[msg=‘测试失败时打印的信息’]): 断言x是否None,是None则测试用例通过。
- assertIsNotNone(x,[msg=‘测试失败时打印的信息’]): 断言x是否None,不是None则测试用例通过。
- assertIn(a,b,[msg=‘测试失败时打印的信息’]): 断言a是否在b中,在b中则测试用例通过。
- assertNotIn(a,b,[msg=‘测试失败时打印的信息’]): 断言a是否在b中,不在b中则测试用例通过。
- assertIsInstance(a,b,[msg=‘测试失败时打印的信息’]): 断言a是是b的一个实例,是则测试用例通过。
- assertNotIsInstance(a,b,[msg=‘测试失败时打印的信息’]): 断言a是是b的一个实例,不是则测试用例通过。
测试报告:
连接:http://www.mamicode.com/info-detail-2679531.html
https://blog.csdn.net/yaoliuwei1426/article/details/82142882
用法
pytets 文件名.py
pytest 文件名.py --alluredir ./result/
allure generate ./result/ -o ./report/ --clean
要加上文件名是我的环境配置不是在同一个上