Selenium的包装器,允许轻松开发Web的自动化测试

PySelenium的Python项目详细描述


Travis CI Build StatusCoverage StatusPyPI versionLicense

贫硒

一个python包,它使用selenium使web应用程序的测试自动化。

设置说明

使用量

在成功完成设置说明后,您可以开始对测试进行如下编程:

frompyselenium.test_metadataimportTestfrompyselenium.test_stepsimport*frompyselenium.test_runnerimport*test=Test('My test')test.add_step(Navigate('http://www.google.com'))test.add_step(TypeText(css_path='#lst-ib',hint='Google search bar',text='Automating a Google search'))test.add_step(SendEnter())test_runner=TestRunner(test)test_result=test_runner.run_test()print(test_result)

从元素获取css路径

使用google chrome,从元素中查找css路径非常容易。您只需右键单击元素,然后单击“inspect”打开开发人员工具控制台:

Inspect

打开开发人员工具控制台后,右键单击其中的元素并选择“复制选择器”:

Selector

执行此操作后,选定元素的css路径应已在剪贴板中。

样品测试

您可以在pyselenium/sample_test.py

可用测试步骤列表

以下是当前可用的测试步骤:

  • 导航
    • 导航到指定的URL。
  • 单击
    • 单击网页上的给定元素。它可以是任何html元素。如果在网页上找不到元素,则失败。
  • assertelementvalue
    • 断言元素值(文本)等于指定的值。如果找到的值与预期值不同,则失败。
  • assertelementattributevalue
    • 断言html元素的特定属性的值等于指定属性的值。如果找到的值与预期值不同,则失败。
  • clickiffound
    • 单击网页上的给定元素。它可以是任何html元素。如果在网页上找不到元素,则不会失败。如果找不到元素,则不执行任何操作。
  • assertelementnotpresent
    • 断言网页上不存在元素。如果找到元素,则失败。
  • typetext
    • 模拟用户在网页上的给定元素上键入文本。如果找不到元素,则失败。
  • selectDropDownitemByText
    • 通过将下拉元素的文本与给定值进行比较,选择该元素上的选项。如果找不到元素,则失败。
  • setcheckbox
    • 将复选框设置为true或false。如果未找到复选框,则失败。
  • switchframe
    • 将上下文切换到页面上的给定iframe。如果找不到iframe,则失败。运行此步骤后,应在对选定iframe运行所需步骤后立即调用SwitchToDefaultContent,以确保上下文切换回页面的默认内容。
  • switchtodefaultcontent
    • 将上下文切换为网页的默认内容。应该总是在将上下文切换到另一个iframe并在该iframe上运行所需步骤之后调用。
  • sendEnter
    • 向网页发送回车键。就像用户只需点击键盘上的返回按钮。此步骤没有任何有关页上焦点所在位置的上下文信息,因此应仅在必要时使用。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在RPI nogui上侦听KeyEvent   java参数重写顺序   java如何删除默认seekbar笔划?   使用java在openCV中使用Mat   如何将图像从java小程序发送到javascript?   使用Java从堆栈溢出API获取信息   Java:数组,这里发生了什么?   java在使用RestTemplate时如何映射ResponseEntity中的响应对象?   java如何根据状态更改事件以分布式方式计算flink状态下的“客户机”数量?我需要有状态的对象   java如何使用for循环生成此模式?   Java执行的循环在工作不正常时执行   长数据类型中k的java正幂   安卓 studio中的java Erro SQLITE   javajoda:org。乔达。时间IllegalInstantException:由于时区偏移转换(夏令时“间隙”)而导致的非法瞬间