问题标签 [intern]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unit-testing - 为什么我的实习生考试因“未定义文档”而失败
我是实习生的新手,正在努力尝试在我的环境中运行一个简单的测试。我能够让教程测试运行,但我试图设置一个测试,其中测试文件位于我的应用程序目录层次结构中。正在测试的模块位于此处:
测试文件位于此处:
我的实习生配置文件位于此处:
我的加载器和套件对象如下所示:
当加载器尝试加载它时,我得到:
使用 Intern 的单元测试是否需要定义 DOM 文档?我还注意到 Intern 将 dojo2_core 列为依赖项。所以它使用的是未发布的代码?
对此的任何帮助将不胜感激!
selenium-webdriver - 使用实习生将焦点更改为 Selenium 2 中的下一个输入元素
我正在尝试填写如下所示的登录表单,但不起作用
我需要在这里模拟实际用户的操作。
javascript - 1.1 中的实习生目录结构和循环依赖错误
我一直在为使用实习生 1.1 的实习生设置推荐的目录结构而苦苦挣扎。我注意到从 1.0 到 1.1 的更改会影响实习生目录的位置。
我注意到实习生包的依赖项包括dojo,但似乎是指dojo v2:“dojo”:“git+ https://github.com/csnover/dojo2-core.git#1a7d8fa ”我不确定为什么会这样因为 v2 还没有出来。
我已经挣扎了好几天才能获得一个非常简单的测试文件来运行但没有成功。我的层次结构是这样的:
我的 FilterGridTest.js 文件的上半部分是:
我尝试了各种修改,要么实习生无法加载测试文件,要么出现循环依赖错误:
我的 intern.js 文件有这个 loader 属性:
其中 web 是我的网络根目录,并且有一个 package.json 文件。
我不知道是什么导致了这个错误或如何解决它。
javascript - 多包测试的推荐实习生目录结构
我已经完成了实习教程,这是一个非常简单的单元测试用例。但是,我不清楚目录结构是否可以不同,以及实习生的配置可以有多灵活来适应它。
我想找到一个教程,显示预期的 v1.1 实习生位置......哪些位置是强制性的,哪些可以修改,以及它如何影响配置文件 (intern.js) 设置。实习生对项目的期望目录结构是什么,什么是可变的,例如当您甚至有多个包时。
特别是我想看看以下的相对位置关系:
- 网络根
- 实习生目录
- 实习生.js 配置文件
- 单元测试文件
- dojo/dijig/dojox/etc 包位置
- 包中的模块
如果可能,请说明放置与配置设置的关系。
phantomjs - 通过 Grunt 和 Phantomjs 与 Intern 一起测试浏览器代码
我一直在和 Intern 一起玩,并让我的测试在浏览器中运行。为了更好地与我当前的工作流程集成,我正在尝试通过带有 phantomjs 的 grunt 运行我的测试。然而我所有的尝试都失败了。我一直将这个问题作为Intern WebDriver 和 PhantomJS的参考,但无法弄清楚使其工作的所有步骤。
首先:甚至可以通过 grunt 和 phantomjs 运行测试吗?
一点信息:
- 我不想/不能连接到 Sauce Labs 或 Selenium 测试环境。
- 我想测试浏览器代码,同时将 jQuery 作为填充依赖项
- 我安装了 Grunt 0.4.1 和 phantomjs 1.9.1
- 我没有测试任何 ajax 请求(因为链接的问题有问题)
- 我对 Selenium 和 Sauce Lab 都不熟悉
如果可以通过 grunt 和 phanomjs 进行测试,我将如何去做呢?
我想我必须启动 GhostDriver
但是,实习生配置中的重要信息是什么?
环境 browserName 如何映射到 phantomjs?我已经尝试了具有不同版本和平台的 browserNames 'phantom' 和 'phanomjs'(运行 Mac 10.7)
我的实习生 Gruntfile 部分如下所示:
在没有任何包含浏览器代码输出 ' ReferenceError: document is not defined
' in ' node_modules/intern/lib/reporters/webdriver.js:41:19
' 的测试套件的情况下运行此设置
添加浏览器测试会ReferenceError: window is not defined
在 ' ' 中提供 ' src/vendor/jquery/jquery-1.9.1.js:9597:5
'
通过节点运行它会产生相同的“ window is not defined
”错误。
node node_modules/intern/client.js config=tests/intern
我在这里做错了什么/错过了什么?
acceptance-testing - 实习生:1 次测试失败导致所有测试失败 - 这是预期的行为吗?
我为实习生设置了我认为的标准功能测试,我可以让它们在多个浏览器中一致通过。我仍在评估将实习生用于项目是否有意义,所以我试图看看测试失败时会发生什么,目前如果我让一个测试失败,它似乎总是会导致套件中的所有测试失败。
我的测试看起来有点像:
我将尝试调试自己来解决这个问题,但我只是想知道是否有人知道这是否是预期的行为(1 个测试失败导致整个测试套件失败,并报告套件中的所有测试都失败了),或者我的设置是否更有可能是错误的,并且我的承诺之间的互动不好?
任何帮助都会很棒,如果有帮助,很乐意提供更多信息:)
谢谢!
javascript - Phantomjs GhostDriver 实习生
我正在尝试设置 Intern 在 Windows 7 机器上使用 PhantomJS 运行
从现在开始,我的设置如下:
演示测试root/unit/tests/phantom.js
:
配置文件root/unit/intern.config.js
:
通过在浏览器中运行这个测试和配置,它就可以工作了。
要使用 PhantomJS 运行实习生,我执行:
和:
运行 Phantomjs 的控制台然后返回:
而另一个输出以下消息而没有任何进一步的日志:
关于我缺少什么的任何提示?
javascript - 异步测试在失败时不会出错
我在进行简单的异步测试时遇到了一些麻烦。以下代码不会在控制台中引发任何错误,即使它应该,因为data
传递给函数的值不等于0
:
我很确定我在某个地方搞砸了,因为直到现在我才使用承诺,但我不知道在哪里。任何想法都会有很大帮助。谢谢!
intern - 是否可以从自定义报告器写入文件?
我正在尝试编写一个自定义报告器,它将实习生测试结果输出到文件中,但我遇到了障碍。
我设法通过 Intern 的 dojo 加载程序获取了 Node 文件系统 API,但 writeFile 或 writeFileSync 都没有做任何事情(不同之处在于 writeFileSync 锁定了进程)。
我的记者代码的最小版本:
如果我用控制台日志替换写调用,我会得到预期的数据,所以其他一切似乎都工作正常。
编辑:修改后的代码有效:
intern - 如何与实习生进行有条件的浏览器交互
使用承诺的网络驱动程序,我想检查页面上是否存在元素,如果存在则登录,否则继续使用承诺链。