一、概述
对于比较复杂的系统,每次有小的迭代测试同学不可能会把所有的流程验证一遍,如果开发无意改动影响了某些流程而测试又没测试到,就可能会出现生产问题,因此很有必要通过自动化的测试去确保系统的稳定性。自动化测试可以选择接口自动化测试和UI自动化测试,从复杂度和实用性来讲UI自动化测试会易用一些,因此我们选择了UI自动化测试。
UI自动化测试是指通过编写自动化脚本来模拟用户与应用程序的交互,测试应用程序的用户界面是否正常工作。这些自动化脚本可以模拟用户的点击、输入和其他交互动作,以及验证应用程序的响应和预期结果。UI自动化测试可以帮助开发团队检测和解决用户界面的问题,提高应用程序的质量和稳定性。常见的UI自动化测试工具包括Selenium、Appium和Cypress等。
二、selenium介绍
Selenium是一个流行的自动化测试框架,用于测试Web应用程序的用户界面。它提供了一组功能强大的工具和库,允许开发人员使用多种编程语言(如Java、Python、C#、JavaScript等)编写自动化测试脚本。
Selenium可以模拟用户在浏览器中的交互行为,例如点击按钮、输入文本、选择下拉菜单等。它支持各种浏览器,包括Chrome、Firefox、Safari等,并且可以在不同的操作系统上运行。
Selenium的核心组件包括:
- Selenium WebDriver:用于控制浏览器并执行测试操作的API。
- Selenium Grid:用于在多个浏览器和操作系统上并行运行测试的工具。
- Selenium IDE:一个浏览器插件,用于录制和回放用户界面操作,生成测试脚本。
使用Selenium,您可以编写灵活、可靠的自动化测试脚本,验证Web应用程序的功能和用户界面是否正常工作。它是一个广泛使用的工具,被许多开发团队和测试团队用于构建自动化测试套件。
三、如何进行UI自动化测试
1、安装python
2、安装Selenium库,可以使用pip命令行安装Selenium库
复制代码
pip install selenium
3、下载浏览器驱动程序:
根据您使用的浏览器类型,下载相应的浏览器驱动程序。例如,如果您使用Chrome浏览器,则需要下载ChromeDriver。确保将驱动程序的路径添加到系统的环境变量中。
推荐按照以下方式安装:
复制代码
pip install webdriver-manager
可以通过以下方式配置安装
javascript
复制代码
// 老版本 from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager driver = webdriver.Chrome(ChromeDriverManager().install()) // 新版本 from selenium import webdriver driver = webdriver.Chrome()
4、开始编写
计划实现功能:跳转到某系统,登录进入
python
复制代码
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.action_chains import ActionChains import time driver = webdriver.Chrome() driver.maximize_window() driver.get('要进入的系统') # 等待加载 driver.implicitly_wait(4) # 获取登录按钮 element=driver.find_element(By.CLASS_NAME, value='login-com-btn') # 用户名输入框 userAccountEle = driver.find_element(By.ID, value="userAccout") # 密码输入框 passwordEle = driver.find_element(By.CSS_SELECTOR, value='input[type="password"]') # 验证码输入框 veriCodeEle = driver.find_element(By.CSS_SELECTOR, value='input[placeholder="请输入验证码"]') # 输入登录信息和验证码 userAccountEle.send_keys('用户名') passwordEle.send_keys('密码') veriCodeEle.send_keys('验证码') # 点击登录 element.click()
5、效果展示
四、总结
1、使用场景
对比较重要的核心系统可以在UAT的稳定版本执行核心流程的UI自动化测试,验证流程是否能够正常运行,结合异常上报系统上报异常数据,及时获得运行结果以及异常数据,做到实时对系统质量的监控。
2、如何更好的使用
如果想做的专业的话,可以集成到自动化测试系统,通过系统自动生成UI测试用例,定时执行以及报告的输出。
总结
如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入我们,加入方式在文章的最后面
自动化测试相关教程推荐:
2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili
2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili
测试开发相关教程推荐
2023全网最牛,字节测试开发大佬现场教学,从零开始教你成为年薪百万的测试开发工程师_哔哩哔哩_bilibili
postman/jmeter/fiddler测试工具类教程推荐
讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!_哔哩哔哩_bilibili
2023自学fiddler抓包,请一定要看完【如何1天学会fiddler抓包】的全网最详细视频教程!!_哔哩哔哩_bilibili
2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibili
总结:
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步
在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。
我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,
测试开发视频教程、学习笔记领取传送门!!