“入门”中的 Dalekjs Amazon 示例无法与 Chrome 和 PhantomJS 一起使用
Posted
技术标签:
【中文标题】“入门”中的 Dalekjs Amazon 示例无法与 Chrome 和 PhantomJS 一起使用【英文标题】:Dalekjs Amazon example from "Getting Started" not working with Chrome and PhantomJS 【发布时间】:2015-10-14 17:22:42 【问题描述】:当它在 Chrome 中运行时,我得到 FOUND: [object Object]
的文本断言。
当它在 PhantomJS 中运行时,我得到 FOUND:
(空白)。
Running tests
Running Browser: PhantomJS
OS: mac 10.10 (Yosemite) 32bit
Browser Version: 1.9.8
RUNNING TEST - "Amazon does its thing"
▶ OPEN http://www.amazon.com/
▶ TYPE #twotabsearchtextbox
▶ CLICK .nav-submit-input
▶ WAITFORELEMENT
✘ TEXT
0 EXPECTED: The Blues Brothers
0 FOUND:
✘ TEST - "Amazon does its thing" FAILED
0/1 assertions passed. Elapsed Time: 58.91 sec
我的测试:
module.exports =
'Amazon does its thing': function (test)
test
.open('http://www.amazon.com/')
.type('#twotabsearchtextbox', 'Blues Brothers VHS')
.click('.nav-submit-input')
.waitForElement('#result_0')
.assert.text('#result_0 .newaps a span').is('The Blues Brothers')
.done();
;
我使用的是 OS X Yosemite 10.10.5。
Chrome 版本:46.0.2490.71(64 位)
Dalek 版本:
DalekJS CLI 工具版本:0.0.5 DalekJS 本地安装:0.0.9
【问题讨论】:
【参考方案1】:亚马逊似乎已经改变了他们的 DOM,分别将提交按钮类 .nav-submit-input
更改为 .nav-input
,以及他们的结果页面的结构。因此,您还必须将#result_0 .newaps a span
更改为#result_0 .s-access-title
,然后它应该会再次工作。
【讨论】:
以上是关于“入门”中的 Dalekjs Amazon 示例无法与 Chrome 和 PhantomJS 一起使用的主要内容,如果未能解决你的问题,请参考以下文章
Amazon S3 中的 Angular CORS(无服务器)
有人可以使用 Amazon Web Services 中的 itemsearch 提供一个 C# 示例吗
询问对话框 (cli) 不理解意图中的 AMAZON.NUMBER 插槽
在 Java EE 中实现 Amazon Web Services 的在线照片处理服务示例