从命令行启动Chrome浏览器的模拟功能
我将Google Chrome与实习生一起运行自动测试,我想知道是否有一种方法可以从CLI中启动Chrome,或者使用特定的标志来测试移动渲染.如果没有,您知道一个很好的解决方法吗? 我可以直接将Android模拟器(来自Android SDK)与Selenium Webdriver APK或移动Chrome一起使用,但是大多数时候测试都在崩溃,模拟器不响应,我必须重新启动它.另外,我需要测试最大的范围,而不仅限于Android设备. 桌面上的铬 我尝试了使用" - 可触摸事件"标志和自定义用户固定的解决方法,但它会产生奇怪的行为.也许其他一些旗帜会帮助我? 预先感谢您的回答. 解决方案 这是当前这是我也一直想要自己的功能,所以我继续在以下链接上提交了功能请求: /详细信息ID = 373169&感谢= 373169&ts = 1400050662 我要交叉手指,但是如果您和其他对此感兴趣的人也不会对线程发表评论,这不会受到伤害.要求它的人越多,实施它的
20 2023-11-30
编程技术问答社区
如何模拟一个用dojo/node加载的Node.js模块
我有一个带有服务器代码的应用程序define([ 'dojo/node!nconf', 'dojo/_base/config' ], function (nconf, dojoConfig) { nconf.argv().file({ file: dojoConfig.baseDir + '/config.json' }); console.log('-- file name:', dojoConfig.baseDir + '/config.json'); console.log('-- context:', nconf.get('context')); // ... logic here ... return nconf.get(nconf.get('context')); }); 要能够对此模块进行单位测试,我写了两个模拟:一个用于nconf nconf本机模块,一个用于dojoConfig.这是测试: define([ 'require', 'inter
4 2023-11-07
编程技术问答社区
如何要求用Intern JS测试NodeJS的模块?
我正在通过以下intern.js test(下面的myfile.js进行require('xxxxxx'))来获得错误Attempt to require unloaded module xxxxxx用于测试nodejs. define(function(require) { var bdd = require('intern!bdd'); var myfile = require('../myfile.js'); bdd.describe('the thing being tested', function() { bdd.it('do the test', function() { ... 目录结构为 intern.js myfile.js test |-- test.js 如何正确要求文件?没有关于如何使用BDD测试接口进行操作的示例.有一些示例可以使用其他样式进行此操作,例如如何从Intern.js测试中加载Node.js ht
6 2023-11-07
编程技术问答社区
用Intern测试自定义JavaScript(非Node模块)。
是否可以为自定义客户端创建和运行测试套件 JavaScript,不是作为节点模块创建的?应该如何 那是更改配置吗? 实习生配置中有加载程序部分,指定 如果我正确的话,将加载的软件包.是否有必要 在这里包括我的自定义JS代码? 我应该在哪里放置我的测试套件,以及当它们不属于任何节点软件包时,它们外观如何再次属于我的自定义JS代码.换句话说,我将如何"加载"并运行它们? 我试图以某种方式使它起作用,而我却没有节点.我的尝试是这样的: $ node client.js config=tests/js/intern Defaulting to "console" reporter 解决方案 1.您的测试模块将始终以AMD模块的形式写入,但是您可以测试所需的任何客户端代码.在您的测试模块中,只需将非AMD代码与任何其他模块一样指定为依赖项,然后访问脚本创建的全局变量: define([ 'intern!tdd', 'intern/chai!assert'
8 2023-11-07
编程技术问答社区
当在实习生中使用ArcGIS JSAPI作为备用加载器时,测试套件的路径将被删除。
我有一个使用Arcgis JavaScript API构建的应用程序,并且我一直在使用实习生添加测试.在开发时,我在Windows 7中的IIS下运行它.我毫不费力地获得例如,假设我的应用在http://localhost/testApp/mySite上托管,并且我有JS,CSS,测试和Node_modules文件夹在MySite位置定义. 要运行测试,我必须转到http://localhost/testApps/mySite/node_modules/intern/client.html?config=mySite/tests/intern准备mySite到配置的位置. 同样,在我的配置中,我必须像这样定义我的套房: suites: [ 'mySite/tests/suite1', 'mySite/tests/suite2', 'mySite/tests/suite3' ], 如果我不更改脚本标签以在client.html中使用其他加载程序并使用nod
2 2023-11-07
编程技术问答社区
如何在Intern测试中模拟依赖关系
实习生是否使用requirej来加载测试?我正在使用这种方法嘲笑我要测试的模块的依赖项,所以我想知道这是否也适用于实习生. 解决方案 实习生使用Dojo Toolkit的AMD加载程序.要嘲笑依赖项,您应该只能使用标准AMD map功能.在您的实习生配置文件中,类似的事情应该做您需要的事情: define({ …, loader: { map: { myPackage: { 'myPackage/foo': 'myPackage/mocks/foo', 'herp': 'myPackage/mocks/herp', 'derp': 'myPackage/mocks/derp' } } } }); 请参阅 -config#map- 有关map的更多信息. 其他解决方案 不确定这是否会有所帮助.我已经创建了一个用于使用Dojo加载器嘲笑模块依赖项的模块:/a>
6 2023-11-07
编程技术问答社区
为什么我的实习测试会以 "文档未定义 "而失败?
我是实习生的新手,并努力尝试在我的环境中进行简单的测试.我能够运行教程测试,但我尝试设置一个测试文件位于我的应用程序目录层次结构内的测试.正在测试的模块位于这里: sandbox/web/libs/ev/grids/FilterGrid.js 测试文件位于这里: sandbox/web/libs/ev/tests/FilterGrid.js 我的实习生配置文件位于这里: sandbox/tests/intern.js 我的装载机和套件看起来像这样: loader: { packages: [ { name: 'dojo', location: 'web/libs/dojo' }, { name: 'dijit', location: 'web/libs/dijit }, { name: 'dgrid', location: 'web/libs/dgrid' }, { name: '
12 2023-11-07
编程技术问答社区
如何加载节点。实习生内部的js http模块。js测试?
我正在尝试使用实习生测试框架来自动化使用Node.js和strongloop实现的简单REST API. Strongloop提供了一个探索器网页,我用来验证其REST API已实现,并且可以手动测试Postman的API. 我正在尝试使用Intern.js检索集合中媒体对象的计数. HTTP方法是获取的,URL为http://localhost:3000/api/media/count,响应为{" count":2}. 运行Intern.js测试时,我会收到一个错误"错误:尝试卸载的模块HTTP". 我在我的node.js应用程序中具有一个子目录.我的测试案例是Media.js: define([ 'intern!object', 'intern/chai!assert' ], function (registerSuite, assert, media) { registerSuite({ name: 'media',
6 2023-11-07
编程技术问答社区
Intern Leadfoot WaitForAddedById 功能?
如何模拟此功能?拥有一个WaitForDeletedById,但不相反. 是一个有意识的选择. 在Ajax负载上,我该如何等待页面上的新元素的存在,而不是缺少一个? 解决方案 使用 setFindTimeout 设置测试应该多长时间等待存在元素,然后使用普通 find 方法.存在特殊waitForDeleted方法的唯一原因是,它必须使用本地轮询方法来有效地响应被删除的元素,而等待元素直到其存在的元素是由远程Selenium Server在本机上支持的功能.
16 2023-10-25
编程技术问答社区
如何在 internjs 测试失败时截图?
我只有在实习生失败时才弄清楚如何弄清楚如何进行屏幕截图的问题.我在我的寄存器中有一个简单的测试; 'verify google homepage': function () { var url = 'https://www.google.com/'; return this.remote .get(url) .getCurrentUrl() .then(function (data) { assert.strictEqual(data, url, 'Incorrect URL'); }) .findByName('q') .click() } 我可以简单地使用以下代码创建屏幕截图; .takeScreenshot .then(function (data) { fs.writeFileSync('/path/to/som
44 2023-10-23
编程技术问答社区
Intern.js中的文件上传
写在文档中,可以使用实习生进行诸如文件上传之类的事情.谁能提供一个可以做到这一点的例子? 我通过示例和Leadfoot文档进行了搜索,但找不到任何东西. 谢谢. 解决方案 您与文件输入表单字段进行交互,就像最终用户一样,除了您要"键入"要在测试机上上传的文件的绝对路径. return this.remote.findById('fileInput').type('/path/to/file'); 另请参阅
0 2023-10-18
编程技术问答社区
Dojo实习生设置火狐档案名称
hi iam试图在 intern config file.i尝试 environments: [ { browserName: 'firefox',firefox_profile:'default' }, {firefox_profile:'default'} ], 和 environments: [ { browserName: 'firefox',profile:'default' }, {profile:'default'} ], 以及 capabilities: { 'selenium-version': '2.42.0', firefox_profile:'default' }, 如硒能力 但是Firefox仍以匿名配置文件启动. 但是,如果我使用 watir , def setup @browser = Watir::Browser.new
2 2023-10-17
编程技术问答社区
Java字符串实习功能结果问题
我现在正在学习java,我读了这个问题:什么是Java字符串实习? - 堆叠溢出 但是我读了其他提供一些我不理解的示例的文章: public static void main(String[] args) { String str2 = new String("str") + new String("01"); str2.intern(); String str1 = "str01"; System.out.println(str2 == str1); //true String s4 = new String("1"); s4.intern(); String s5 = "1"; System.out.println(s4 == s5); //false String s = new StringBuilder("aa
4 2023-10-03
编程技术问答社区
为其他对象实现与String.intern()相当的功能
我正在尝试实现等效于string.intern()的等效词,但是对于其他objets. 我的目标是以下: 我有一个我将序列化然后进行序列化的对象. 如果还有一个对某个地方的引用,我希望避难所的结果是相同的参考. 这是我期望的一个例子. MyObject A = new MyObject(); A.data1 = 1; A.data2 = 2; byte[] serialized = serialize(A); A.data1 = 3; MyObject B = deserialize(serialized); // B!=A and B.data1=1, B.data2=2 MyObject C = B.intern(); // Here we should have C == A. Consequently C.data1=3 AND C.data2=2 这是我的实施ATM. (MyObject类扩展InternableObject) public abstrac
20 2023-08-29
编程技术问答社区
节点检查器没有击中Intern测试的中断点
我正在尝试使用节点Inspector调试实习测试.我从在这里 .我通过执行以下命令 来运行它 开始硒[用于实习测试] 在节点环境中运行实习生测试 c:\ node \ node -debug-brk-brk node_modules/intern/runner.js config = tests/intern 在另一个CMD中,我运行节点Inspector 节点 - 顾问 - web-port = 9999& 启动浏览器 我可以看到我项目的所有脚本.我在一个测试组件之一中设置了断点.但是,当我恢复调试器的那一刻,测试开始运行,但断点永远不会受到打击.我究竟做错了什么 ? 解决方案 我认为您应该将debugger;添加到脚本中作为断点
8 2023-08-28
编程技术问答社区
如何切换iframes InternJS
我需要切换到具有动态名称和ID的iframe. ... 我注意到Leadfoot有一个 switchtoframe()这是从 find()我遇到错误" movetArgetOutOfbounds:帖子http .../moveto/{" element":" 16"}元素内的偏移量无法滚动到视图中. 使用execute()和一些JavaScript有更好的方法来执行此操作,还是如何使SwitchTofRame()工作? 解决方案 根据页面上的iframe如何设置,您可以尝试这样的事情: .switchToFrame(null) .findAllByClassName('iframe') .then( function(iframes) { new remote.
6 2023-08-27
编程技术问答社区
在Selenium chromedriver上运行的远程调试Internjs
我尝试通过InternJS进行的远程调试测试. 基本上,这是由硒和铬片运行的铬. 我设置Chromedriver debuggeraddress选项为 debuggerAddress: '127.0.0.1:8765' 现在,当我运行测试时,硒会等待一些时间,而失败的消息: FATAL ERROR UnknownError: [POST http://localhost:4444/wd/hub/session / {"desiredCapabilities":{"browserName":"chrome","name":"tests/intern_local","idle-timeout":60,"selenium-version":"2.44.0","chromeOptions":{"debuggerAddress":"127.0.0.1:8765"}}}] unknown error: cannot connect to chrome at 127.0.0.1:
18 2023-08-27
编程技术问答社区
未知错误:写入prefs文件失败
我在使用跑步者运行功能测试时不断遇到错误: 硒2.44 Chrome Driver Windows Server 2008 R2 Enterprise 错误: Error Description: Listening on 0.0.0.0:7000 Starting tunnel... UnknownError: [POST http://test.com/wd/hub/session / {"de siredCapabilities":{"browserName":"chrome","name":"tests/intern","idle-timeout": 60,"selenium-version":"2.44.0"}}] unknown error: failed to write prefs file (Driver info: chromedriver=2.12.301325 (962dea43ddd90e7e4224a03fa3c36a421281ab b
78 2023-08-26
编程技术问答社区
在Intern中调用Chai插件返回错误
我试图在实习生中使用 sinon-chai插件在实习生中,但它给了我: Error {stack: (...), message: "Cannot find the Node.js require"} 我已经通过NPM安装了插件,这是我的测试文件: define([ 'intern!bdd', 'intern/chai!expect', 'app/functions', 'intern/chai', 'intern/dojo/node!sinon-chai' ], function (bdd, expect, myapp, chai, sinonChai) { chai.use(sinonChai); ... }); 可能出了什么问题? 解决方案 节点加载程序需要node.js,因此不能在浏览器中使用.您需要直接加载Sinon-chai库,如下所示(假设从测试到node_modules的相对路径为../node_modules
6 2023-08-08
编程技术问答社区