使用起点
SeleniumIDE允许用户指定在测试脚本中的起始点。起点指向我们想要开始测试脚本的那个测试步骤。
起点可用当我们并不想从头开始执行整个测试脚本,而是自定义从某个步骤开始执行脚本。
起点可以通过以下三种方式来设置和清除:
#1.使用菜单栏中的操作选项卡
#2.使用快捷键(“S”)
#3.右键单击测试步骤,选择“Set/Clear Start Point”,就将显示类似上图的菜单。
在所有上述情况下,用户需要首先选择想要开始执行的步骤,然后再设置起点。
一旦用户已经选择了某个测试步骤作为起点,该处就会就会加上标记。
现在,当我们执行测试脚本时,它会从所设起点开始,即上图测试脚本的第四行所示。(type | id=Passwd | TestSelenium)
笔记
- 一个脚本中有且只有一个起点。
- 起始点可以通过和设置一样的方式来清除。
- 用户需要在Firefox执行测试步骤之前,保证打开脚本。如果用户还没有打开合法网页可能会提高失败的概率。
使用断点
SeleniumIDE允许用户在一个测试脚本指定断点。断点就是表明SeleniumIDE在何处暂停测试脚本。
------------
断点可用于当我们希望将整个执行分割为较小的逻辑块,来研究执行趋势。
断点可以通过以下三种方式来设置和清除:
- 使用菜单栏中的操作选项卡
- 右键单击测试步骤,并选择“Toggle Breakpoint”。
- 使用快捷键(“B”)
一旦用户已经选择了某个测试步骤作为断点,该处就会就会加上标记。
现在,当我们执行测试脚本时,执行就将暂停在断点处,即上图测试脚本的第四行所示 (type | id=Passwd | TestSelenium) 。
使用多个断点
SeleniumIDE允许用户在一个测试脚本中使用多个断点。一旦测试脚本的第一部分开始执行,在达到断点时该脚本将暂停执行。为执行随后的测试步骤,用户需要明确地逐个执行。
在上面的测试脚本,执行暂停在“assertTitle | Sign in – Google Accounts”一行。明确地执行该测试步骤之后,控制按序转移到下一步“type | id=Email | TestSelenium1607@gmail.com”。因此,用户需要明确执行此测试步骤。其余后续步骤也遵循类似的趋势。
因此,此功能让用户可以花更多的时间执行每一个步骤并审查先前执行的测试步骤的结果。
笔记
- 只要你需要,一个脚本中可以有很多断点。
- 断点可以通过和设置一样的方式来清除。
使用查找按钮
Selenium的IDE测试脚本中最关键的方面之一就是发现并定位在网页中的网页元素。有时,网页元素之间具有相类似的属性,从而使得对用户而言唯一地识别一个特定的网页元素成为一个具有挑战性的事情。
为了解决这个问题,SeleniumIDE提供了查找按钮。查找按钮是用来确定目标文本框中提供的定位符值确实是正确的,并确定在GUI中指定了网页元素。
让我们就对上面创建的SeleniumIDE测试脚本进行说明。选择任意命令,并找到目标文本框。点击目标文本框旁边的查找按钮。
请注意,相应的网页元素会以黄色突出显示,周围是荧光绿的边框。如果没有突出显示或突出了错的网页元素,那么用户需要重新纠正问题,需要利用一些其它定位值。
因此,该功能使用户放心确认使用的目标值,以及其对应GUI上的网页元素的正确性。
使用其他格式
将SeleniumIDE的测试脚本转换为其他编程语言
SeleniumIDE支持将测试脚本转换为一系列的编程语言,默认类型为HTML。除非转换的测试脚本被恢复到HTML格式,不然就无法使用Selenium IDE回放。因此,只有当我们用Selenium套件中的其他工具来执行时,该转换才是有益的,建设性的。
第1步——点击菜单栏上的Option选项卡,在Format下选择我们想要转换测试脚本的编程语言格式。
第2步——一旦我们选择我们所期望的编程语言格式(例如“Java/ JUnit4/ webdriver的”),就会出现一个提示框说“更改格式,现在被暂定标记!如果选择继续,录制和回放功能可能无法正常工作,您的更改可能会丢失,您可能需要在文本编辑器中复制并粘贴测试脚本来保存。在继续前最好备份你的测试用例。是否仍然要继续?”点击“确定”继续。
根据上述转换后的代码可以通过使用webdriver来执行。
在源视图下编辑或修改SeleniumIDE的测试脚本是不可取的。如果这样做会在该工具中带来一些影响,几个已知的bug与其有关。
SeleniumIDE命令
每个SeleniumIDE的测试步骤可主要被分成下列三部分组成:
- 命令
- 目标
- 值
SeleniumIDE命令的类型
SeleniumIDE命令有三种类型。任何SeleniumIDE的测试步骤都属于下列类别之一。
- 行动
- 访问
- 断言
行动
行动是指那些直接与应用程序交互,或是改变状态,或是输入一些测试数据的那些命令。
例如,“type”命令允许用户直接与类似文本框的网页元素进行交互。这使用户能在文本框中输入值,当输入一个值后,它将显示在UI上。
另一个例子是“click”命令。 “click”命令允许用户修改应用程序的状态。
如果行动类型的命令失败,测试脚本将暂停执行,剩余的测试步骤不会被执行。
访问
访问那些命令,允许用户将值保存到用户定义的变量中去。这些存储的值可以是稍后用于创建断言和验证的。
例如,“storeAllLinks”读取并存储网页内所有的超链接到用户定义的变量。记住如果有多个值的时候,变量是以数组类型存储的。
断言
断言与访问非常相似,但是断言不直接与应用程序进行交互。断言用于验证应用程序的当前状态与期望状态之间的区别。
断言形式:
#1.assert——“assert”命令可以确保在失败的情况下测试执行将终止。
#2.verify——“verify”命令使SeleniumIDE继续执行,即使验证失败,测试脚本仍将继续执行。
#3.waitFor——“waitFor”命令等待条件满足后执行下一个测试步骤。条件可以是类似页面已装载,元素已存在等。它也可以允许在规定的等待周期后继续执行测试,即使条件未满足。
常用的SeleniumIDE命令
【英文原文:http://www.softwaretestinghelp.com/selenium-ide-script-selenium-tutorial-3/】
{测试窝原创译文,译者:大头}
译者简介:大头,在读日本九州大学修士,计算机专业,主研究方向为文本挖掘,及自然语言处理。