草庐IT

selenium性能优化

全部标签

javascript - 多次使用 jQuery $() 运算符是否会对性能产生影响?

如果我围绕一个元素构建一次或多次jQuery对象,会有显着差异吗?例如:varjEl=$(el);$.each(myArray,function(){jEl.addClass(this);}对比:$.each(myArray,function(){$(el).addClass(this);}我知道还有其他方法可以回避这个问题,但我的问题是我是否应该只做一次$(el),或者它是否真的无关紧要。这个例子是人为设计的。解释$(el)在幕后做了什么的加分点。我知道理论上还有更多的工作要做,但我不知道这是否重要...如果jQuery缓存它或浏览器都非常适合第二个请求或其他任何东西,那么它不值得。

javascript - 如何访问网页中每个资源的性能对象?

我可以在Chrome开发者工具中看到网页中所有资源的加载时间、从服务器获取特定资源所需的时间以及其他信息。我想使用JavaScript捕获这些统计数据。怎么可能?有可用的window.performance对象,但仅适用于请求的页面,不适用于页面资源。有没有办法访问所有页面资源的性能对象。 最佳答案 您应该能够使用window.performance.getEntries()获取特定于资源的统计信息:varresource=window.performance.getEntries()[0];console.log(resource

javascript - NodeJS 循环优化

我知道在浏览器中,按照for(vari=0,l=arr.length;i代替for(vari=0;i但是在NodeJS中是这样还是V8引擎优化了呢?我知道ecma-2625.1sec-15.4数组长度定义如下:Thevalueofthelengthpropertyisnumericallygreaterthanthenameofeverypropertywhosenameisanarrayindex;wheneverapropertyofanArrayobjectiscreatedorchanged,otherpropertiesareadjustedasnecessarytomain

jquery - 停止事件冒泡 - 提高性能?

如果我不回来了false来自事件回调,或使用e.stopPropagationjQuery的特性,事件使DOM冒泡。在大多数情况下,我不关心事件是否冒泡。就像这个DOM结构示例一样:​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​通常,我没有像这样的多个嵌套提交回调:$('#theDiv').submit(function(){alert('DIV!');});$('#theForm').submit(function(e){alert('FORM!'

javascript - 使用 `new Function` 和性能问题

我正在通过AJAX加载一个脚本文件,并运行它的内容,我正在这样做:newFunction('someargument',xhr.responseText)(somevalue);但是,根据MDN:FunctionobjectscreatedwiththeFunctionconstructorareparsedwhenthefunctioniscreated.Thisislessefficientthandeclaringafunctionandcallingitwithinyourcode,becausefunctionsdeclaredwiththefunctionstatement

javascript - Selenium (Python): How to insert value on a hidden input?

我正在使用Selenium的WebDriver并使用Python进行编码。有一个隐藏的输入字段,我试图在其中插入一个特定的日期值。该字段最初会生成一个日历,用户可以从中选择合适的日期,但这似乎比直接插入合适的日期值更复杂。页面的源代码如下所示:其中value="2013-11-26"是我试图注入(inject)一个值的字段(它最初是空的,即:value=""。我知道WebDriver无法将值插入隐藏输入,因为普通用户无法在浏览器中执行此操作,但解决方法是使用Javascript。不幸的是,这是一种我不熟悉的语言。有人知道什么会起作用吗? 最佳答案

javascript - Selenium 网络驱动程序 : execute_script can't execute custom methods and external javascript files

我正在使用Selenium和Python,我正在尝试做两件事:导入外部javascript文件并执行其中定义的方法在字符串上定义方法并在求值后调用它们这是第一种情况的输出:测试.jsfunctionhello(){document.body.innerHTML="testing";}Python代码>>>fromseleniumimportwebdriver>>>f=webdriver.Firefox()>>>f.execute_script("vars=document.createElement('script');\...s.src='file://C:/test.js';\..

javascript - 如何使用 Selenium webdriver 测试对 SVG 对象的点击?

我正在尝试编写代码来检查单击SVG对象的功能-例如此URL上的美国州http://www.amcharts.com/svg-maps/?map=usa这行得通,但是有更好的方法吗?没有物理移动鼠标的东西?robert=newRobot();robert.mouseMove(x,y);//fullclickoncetogetfocusonthewindowrobert.mousePress(MouseEvent.BUTTON1_MASK);robert.mouseRelease(MouseEvent.BUTTON1_MASK);//thensetthefilterrobert.mouse

javascript - 通过采样/插值减少大型数据集的大小以提高图表性能

我有一大组(>2000)时间序列数据,我想在浏览器中使用d3显示这些数据。D3非常适合向用户显示数据的一个子集(~100点),但我还想要一个“上下文”View(likethis)来显示整个数据集并允许用户选择作为子区域进行查看细节。但是,当尝试在d3中显示那么多点时,性能很糟糕。我觉得一个好的解决方案是选择一个数据样本,然后使用某种插值(样条、多项式等,这是我知道怎么做的部分)来绘制一条与实际数据。但是,我不清楚应该如何选择子集。数据(如下所示)具有相当平坦的区域,在这些区域需要较少的样本才能进行适当的插值,而其他区域的绝对导数非常高,需要更频繁的采样。更复杂的是,数据存在间隙(生成数

javascript - 如果 Angular 正在做......从 Selenium 中检测东西

为什么driver.findElement(statictext).getText()曾经返回“”吗?我有一个Angular应用程序,我正在osx上通过java通过chromedriver使用selenium进行测试。我有一些标记如下:statictext我经常得到:assert(driver.findElement(By.id("my-unique-id").getText().contains("statictext");产量:java.lang.AssertionError:Nottruethatcontains喜欢,30%的时间。我不明白该元素的.getText()如何计算为“