质量检查人员已自动执行了此过程,但是如果企业将NCRC引入表格中,则将阻止质量检查能够使应用程序自动化。
有人知道解决此问题的方法,同时在Live和QA中保持相同的内部版本吗?我希望有一个“测试模式”可以打开以进行质量检查,但我在文档中找不到任何内容。
编辑/解决方案:您现在可以自动化reCAPTCHA v2 ,感谢@Andrei Fierbinteanu提供的链接。这不适用于v1,因此您需要升级。只需确保在质量检查和生产中使用正确的密钥即可。
#1 楼
最干净的解决方案是将其删除以进行质量检查环境(有条件地进行渲染)-您有权利吗?您是否要在部署到生产之前进行测试?因此,请勿在运行自动化测试的环境中使用CAPTCHA。如果不能,请使用自动化人员:有些公司会为您解决CAPTCHA的问题-价格相当便宜,1000美元一台,成功率很高,可以在15秒内做出响应。当然,这会增加测试的复杂性:您的测试需要将CAPTCHA提交给供应商并获得响应。
在QA和生产环境中,构建完全相同,但当生产阻止自动脚本执行时,仅允许进行手动测试在质量检查中。有人应该开始思考并重新评估教条要求。
目标是什么:盲目地实现要求(不问任何问题),或创建允许进行有效的开发和测试的过程。
评论
感谢Peter,但要求是要在QA中保持相同的构建并继续运行...因此,在QA中进行了任何测试的每个sprint都是所部署内容的精确副本
–trashpanda
15年3月13日在17:03
好吧,您的要求不允许您测试您的应用程序。有人需要重新评估需求。如果您对服务收费,贵公司是否计划为使用网站的硒测试机器人收费?祝好运!
–Peter M.-代表莫妮卡(Monica)
15年3月13日在17:47
公平地说,可能仍有很多应用程序仍可以进行测试。哎呀,您甚至可以通过直接调用api或其他方式来测试诸如生成新用户或生成注释的操作。仍然对于受验证码保护的东西,您基本上必须告诉权力,他们不能同时拥有两种。阻止机器人的同一验证码也将阻止测试自动化(否则会失败)。告诉您的老板,选择一个:针对在质量检查环境中完全启用的验证码或验证码的自动化测试。
– Chuck van der Linden
2015年3月28日在0:39
#2 楼
为了保持与生产相同的测试版本,应用程序中需要进行某种切换。优选在配置文件(或数据库设置)中。默认情况下,useCaptcha设置为启用,但是在测试环境中,您在配置文件中禁用了此设置。这意味着代码将具有两个路径
它完全不会加载验证码,并且在没有验证码的情况下会继续运行
显示验证码并需要用户输入的代码
仍然需要手动测试它是否无需配置设置,但是每个发布周期只需要执行一次。
开发团队可以帮助您使应用程序可测试,这是解决此难题的常用方法。
#3 楼
据我了解,您有两个选择:如果它是reCaptcha的本地实例,那么您可以在数据库中查找图像ID来查找与其绑定的代码。 br />
http://www.softwaretestingclub.com/forum/topics/how-to-break-recaptcha-using-selenium-webdriver?commentId=751045%3AComment%3A243339
让您的开发人员安装后门。因此,当收到特定输入时,应用程序不会将结果发布到Google的API中,而是让您继续进行,就好像API调用的响应成功一样。
https: //stackoverflow.com/a/12667949/1106708
评论
新的reCAPTCHA不包含任何文本或图像(只是一个复选框),因此不会存储在任何地方。它也由Google托管,这意味着我们无法安装后门程序或欺骗API
–trashpanda
15年3月13日在16:58
@theonlydanever,我相信第二种选择仍然可行。开发人员会先检查输入内容,然后再将其发送给Google的API,并仅允许登录过程继续进行。
–kirbycope
2015年3月13日在21:04
#4 楼
如果此副本必须与您运送的副本相同,并且您无法修改,则无法在验证码之外进行测试。这就是拥有验证码的原因-避免自动化。因此,唯一的选择是在您的应用程序中内置一些东西,从而使测试成为可能。当然,这样做会冒出进入田野并弄乱事情的风险。
我只能想象一些这样做的方法,而不会冒太大的生命危险。根据Google文档,您的应用程序仍然必须评估Google传回的结果,因此,即使是错误的,您也可以允许提交。
允许使用非常好的唯一键列表作为解决方案并将其与每个新构建版本(例如987asdhats6df87a6s87df87a6sdf)一起旋转
实施OTP,并且由于您和应用程序知道启动种子并已同步,因此可以传递有效参数(http://en.wikipedia.com)。 org / wiki / One-time_password),因此无需维护列表,因此您甚至可以稍后再次进行实时测试
评估软件在哪个安装/在哪个环境中运行以及启用或禁用验证验证码
评论
总是让我感到惊讶的是,谷歌没有某种测试模式,或者至少在他们的验证码问题的常见问题解答中至少推荐了这种问题的解决方案。有一个测试帐户(不确定问问题时是否存在)。更多信息,请访问:developers.google.com/recaptcha/docs/…基本上无需身份验证即可使用这些凭据:网站密钥:6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI密钥:6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe
谢谢@AndreiFierbinteanu-这正是我们所追求的!我不敢问这个问题,所以知道这真的很有用-干杯!
更新:reCapture v2现在包括一项功能,可满足自动化测试的需求
上面@AndreiFierbinteanu的评论具有3年前的正确答案,而实际答案均未提及。对于任何想知道的人,请使用Google提供的特殊站点代码:developers.google.com/recaptcha/docs/…