【问题标题】:Automate website validation testing using powershell script?使用 powershell 脚本自动化网站验证测试?
【发布时间】:2017-12-31 12:46:10
【问题描述】:

我有一个网站,其中有几个表格,需要一个一个填写才能达到最终答案,即令牌号。为每个用户唯一生成。

定期手动测试它需要以下步骤:

1) 打开 www.xyz.com

2) 填写第一张表格详细信息,即姓名、年龄、性别点击下一步

3) 填写第二个表格详细信息,即地址、邮编、工作类型点击下一步

4) 填写第三个表格的详细信息....直到表格5,然后点击完成。

5) 单击完成后,我将被重定向到带有令牌编号的最终页面。

问题:如何使用 PowerShell 脚本或任何其他脚本语言自动执行此测试,以便在我运行脚本时,它会一步一步完成所有步骤并给我令牌号。如果测试成功通过,则作为输出?

【问题讨论】:

  • python 和 selenium 结合起来会帮助你很多

标签: python powershell scripting automation automated-tests


【解决方案1】:

为了给您一个设置,您在 Chrome 或资源管理器中加载您的文档并激活开发人员工具(按 F12)并检查您想要查找的对象。您将能够看到为网站加载的文档的 DOM。

这是一个登录示例:

$ie = New-Object -ComObject 'internetExplorer.Application'
$ie.Visible= $true
$username="username@domain.com"
$password="password"
$ie.Navigate("https://www.yourwebsite.com")
While ($ie.Busy -eq $true)
{
Start-Sleep -Seconds 3
}
$usernamefield = $ie.document.getElementByID('Email_ID').value="$username"
$passwordfield = $ie.document.getElementByID('Password').value="$password"
$Link = $ie.document.getElementByID('Login_ID')
$Link.click() #or $Link.submit()
$ie.Quit()

登录后,您就可以开始挑选对象并以同样的方式进行操作。

注意:选择正确的 ObjectId 并将其放入相应的 getElementByID 中。

希望对你有帮助。

【讨论】:

  • 在您的 while 语句中,您可以只输入 While ($ie.Busy) { } 而不是您当前的语句。我建议进行终止进程检查 Do { logic } While ($ie.Busy) 以防 IE 挂起,这样您的 PS 会话也不会因无限循环而挂起。
猜你喜欢
  • 2014-09-13
  • 2015-06-10
  • 1970-01-01
  • 1970-01-01
  • 2016-07-31
  • 2011-04-17
  • 1970-01-01
  • 2020-10-11
  • 1970-01-01
相关资源
最近更新 更多