当前位置:首页 > 自动化 > 正文

web自动化测试代码

壹、软件测试|web自动化测试神器playwright教程(十六)

在日常工作中,文件下载是常见的任务。 通过使用playwright,可以实现自动化文件下载,而无需借助其他工具。 playwright提供expect_download()作来实现文件下载,当浏览器上下文关闭时,所有属于浏览器上下文的下载文件都会删除。


在下载过程中,playwright会发出下载事件。 下载完成后,可以通过获取下载路径来访问文件。 如果下载已经完成或取消,则不会失败。 成功取消后,download.failure()将解析为'canceled’。


playwright还提供了删除下载文件、返回下载错误、获取下载所属页面、以及下载路径等作。 下载成功时,返回下载文件的路径。 如果需要,可以等待下载完成。 下载的文件名是随机GUID,使用download.suggested_filename获取建议的文件名。


对于下载仍在进行的文件,可以将下载复到用户指定的路径。 在下载完成前调用此方法是安全的,并且如果需要,可以等待下载完成。 返回此下载的建议文件名,通常由浏览器根据Content-Disposition响应标或download属性计算得出。


下载的url也可以通过playwright获取。 以下载Python单元测试框架pytest为例,使用playwright的代码实现自动化下载。


相比于selenium,playwright在文件下载功能上更加强大,无需借助其他工具即可实现自动化下载。


为了提供更深入的技术资源,我们推荐以下:


测试前景类
测试择业类
测试入门类
咨询培训类
测试求职类
技术分享类
职场提升类

这些资源涵盖了软件测试的各个方面,包括技术学习、职业规划、面试技巧等,帮助您在软件测试域不断成和发展。

贰、web自动化测试下拉选择框Select

下拉框作技巧
处理下拉框选项,主要采用Select类,此类专为选择框设计,支多种作。
引入Select类有多种方式,实例如下,重点在于选择正确的类。
使用Select类处理下拉框,源码内提供多种方法。
运行示例,下拉框选项循环印至控台,显示所有选项。
通过Select类方法,可实现下拉框选择,如通过值、索引或可见文本选择。
示例代码如下,展示如何通过方法选择并印选项。
使用select_deselect方法进行取消选择作,但需注意指定选项,否则将抛出异常。
总结:Select类为处理下拉框提供了便捷方式,包括选择、取消选择等作。
如有疑问或需进一步了解,欢迎在评论区留言,我们将及时回应并提供帮助。
续更新,敬请期待,愿您在自动化测试之旅中,取得更多收获。

叁、Selenium自动化测试——模拟鼠标键盘的作事件

鼠标作事件
在实际的web产品测试中,鼠标作除了点击之外,还包含右击、双击、动等动作,这些作需要通过ActionChains类来实现。 ActionChains类提供了多种鼠标作方法,例如右击使用context_click(),双击使用double_click(),动使用drag_and_drop(),鼠标移动到元素上使用move_to_element(),按下鼠标左键在元素上按使用click_and_hold()。
这些方法可以组合使用,形成一系列动作序列,例如执行如下代码:
python
ActionChains(driver).move_to_element(元素对象).pause(秒).click(元素对象).release(元素对象).perform()
键盘作事件
配合键盘按键作在实际web测试中同样重要,webdriver的keys类提供了模拟键盘按键的功能,包括模拟组合键如Ctrl_a、Ctrl_c/v等。
使用keys类需要先导入,代码如下:
python
fromselenium.webdriver.common.keysimportKeys
对于页面上某输入框中的作,例如按两下Tab键,可以使用如下代码实现:
python
driver.find_element(By.XPATH,'//input[@id="kw"]').click()
ActionChains(driver).send_keys(Keys.TAB).pause(1).send_keys(Keys.TAB).perform()
对于组合键如Ctrl+a、Ctrl+c、Ctrl+v的作,可以使用如下代码:
python
driver.find_element(By.XPATH,'//input[@id="kw"]').send_keys('python')
ActionChains(driver).key_down(Keys.CONTROL).send_keys('a').key_up(Keys.CONTROL).perform()
在使用修饰键时,需要使用key_down()和key_up()方法。 修饰键包括ctrl、alt、shift。
以上代码和方法可以帮助完成web页面上所需的各种鼠标和键盘作,提高测试的全面性和精确度。