我正在使用Jasmine进行一些测试,尽管这通常可以应用于基于浏览器的javascript单元测试.
我有一个功能,在某些条件下,用户将用户重定向到不同的页面window.location.assign.问题是,如果达到此行,页面将被重定向.在这种情况下,由于它被重定向到'/',页面重新加载,所有测试再次运行.我该怎么做才能测试函数是否到达重定向的行,而不重定向?
DOM的实现或模拟是纯粹的javascript吗?
是否有适用于大多数任何javascript解释器的解决方案,例如v8,而不是绑定到任何特定的解释器或引擎?也就是说,JS中是否有任何DOM实现,没有任何设置或垫片可以放入javascript解释器并运行?
我怎么能在jQuery中找到哪些事件与特定元素的实时绑定?
假设我有一个函数,randomFunction它从函数数组中返回一个随机函数.如何找到哪个函数绑定到某个元素?
var arrayOfFunctions = []; //a whole bunch of functions
function randomFunction(array){}; //returns one of those functions
$('#certain_element').live('click', randomFunction(arrayOfFunctions));
Run Code Online (Sandbox Code Playgroud)
与livefor 绑定的函数对应的数组的索引是什么$('#certain_element')?
这是半编程,半数学问题.
我有一些盒子,代表四个角点.它们是真正的矩形,是两组平行线的交点,每组中的每一行都与另一组中的两条直线成直角(我们很清楚.)
对于任何一组n个框,我怎样才能有效地计算移动它们的位置(最小距离),以便它们不会相互重叠?
我在这里用javascript工作.这是数据:
//an array of indefinite length of boxes
//boxes represented as arrays of four points
//points represented as arrays of two things, an x and a y, measured in
//pixels from the upper left corner
var boxes = [[[504.36100124308336,110.58685958804978],[916.3610012430834,110.58685958804978],[916.3610012430834,149.58685958804978],[504.36100124308336,149.58685958804978]],[[504.4114378910622,312.3334473005064],[554.4114378910622,312.3334473005064],[554.4114378910622,396.3334473005064],[504.4114378910622,396.3334473005064]],[[479.4272869132357,343.82042608058134],[516.4272869132358,343.82042608058134],[516.4272869132358,427.82042608058134],[479.4272869132357,427.82042608058134]],[[345.0558946408693,400.12499171846],[632.0558946408694,400.12499171846],[632.0558946408694,439.12499171846],[345.0558946408693,439.12499171846]],[[164.54073131913765,374.02074227992966],[264.54073131913765,374.02074227992966],[264.54073131913765,428.02074227992966],[164.54073131913765,428.02074227992966]],[[89.76601656567325,257.7956256799442],[176.76601656567325,257.7956256799442],[176.76601656567325,311.7956256799442],[89.76601656567325,311.7956256799442]],[[60.711850703535845,103.10558195262593],[185.71185070353584,103.10558195262593],[185.71185070353584,157.10558195262593],[60.711850703535845,157.10558195262593]],[[169.5240557746245,23.743626531766495],[231.5240557746245,23.743626531766495],[231.5240557746245,92.7436265317665],[169.5240557746245,92.7436265317665]],[[241.6776988694169,24.30106373152889],[278.6776988694169,24.30106373152889],[278.6776988694169,63.30106373152889],[241.6776988694169,63.30106373152889]],[[272.7734457459479,15.53275710947554],[305.7734457459479,15.53275710947554],[305.7734457459479,54.53275710947554],[272.7734457459479,54.53275710947554]],[[304.2905062327675,-3.9599943474960035],[341.2905062327675,-3.9599943474960035],[341.2905062327675,50.04000565250399],[304.2905062327675,50.04000565250399]],[[334.86335590542114,12.526345270766143],[367.86335590542114,12.526345270766143],[367.86335590542114,51.52634527076614],[334.86335590542114,51.52634527076614]],[[504.36100124308336,110.58685958804978],[916.3610012430834,110.58685958804978],[916.3610012430834,149.58685958804978],[504.36100124308336,149.58685958804978]],[[504.4114378910622,312.3334473005064],[554.4114378910622,312.3334473005064],[554.4114378910622,396.3334473005064],[504.4114378910622,396.3334473005064]],[[479.4272869132357,343.82042608058134],[516.4272869132358,343.82042608058134],[516.4272869132358,427.82042608058134],[479.4272869132357,427.82042608058134]],[[345.0558946408693,400.12499171846],[632.0558946408694,400.12499171846],[632.0558946408694,439.12499171846],[345.0558946408693,439.12499171846]],[[164.54073131913765,374.02074227992966],[264.54073131913765,374.02074227992966],[264.54073131913765,428.02074227992966],[164.54073131913765,428.02074227992966]],[[89.76601656567325,257.7956256799442],[176.76601656567325,257.7956256799442],[176.76601656567325,311.7956256799442],[89.76601656567325,311.7956256799442]],[[60.711850703535845,103.10558195262593],[185.71185070353584,103.10558195262593],[185.71185070353584,157.10558195262593],[60.711850703535845,157.10558195262593]],[[169.5240557746245,23.743626531766495],[231.5240557746245,23.743626531766495],[231.5240557746245,92.7436265317665],[169.5240557746245,92.7436265317665]],[[241.6776988694169,24.30106373152889],[278.6776988694169,24.30106373152889],[278.6776988694169,63.30106373152889],[241.6776988694169,63.30106373152889]],[[272.7734457459479,15.53275710947554],[305.7734457459479,15.53275710947554],[305.7734457459479,54.53275710947554],[272.7734457459479,54.53275710947554]],[[304.2905062327675,-3.9599943474960035],[341.2905062327675,-3.9599943474960035],[341.2905062327675,50.04000565250399],[304.2905062327675,50.04000565250399]],[[334.86335590542114,12.526345270766143],[367.86335590542114,12.526345270766143],[367.86335590542114,51.52634527076614],[334.86335590542114,51.52634527076614]]]
Run Code Online (Sandbox Code Playgroud)
我有一个关于在黄瓜中使用硒的问题.
这里是黄瓜的特点:
@selenium @javascript
Scenario: Create forum
Given I have a site named "hairclub" and I logged in as admin
When I am on the "admin" page
Run Code Online (Sandbox Code Playgroud)
要运行,我使用此命令:
cucumber features/forum.feature
Run Code Online (Sandbox Code Playgroud)
它工作正常; 它会打开浏览器(如您所见@selenium @javascript tag).一切都很好看.
我想运行相同的黄瓜脚本但不打开浏览器; 我想如果场景增长,浏览器运行需要一段时间.我希望能够在浏览器打开的情况下运行,也不需要打开浏览器.有没有命令我可以从终端传递给覆盖@selenium @javascript?
在控制器方法中,如何渲染模板和布局?
像这样:
def new
render :template => 'devise/invitations/new', :layout => 'application_unauthorized2_t2'
end
Run Code Online (Sandbox Code Playgroud) 有没有办法在rspec中使用隐式主题正确测试异常提升?
例如,这失败了:
describe 'test' do
subject {raise 'an exception'}
it {should raise_exception}
end
Run Code Online (Sandbox Code Playgroud)
但这传递了:
describe 'test' do
it "should raise an exception" do
lambda{raise 'an exception'}.should raise_exception
end
end
Run Code Online (Sandbox Code Playgroud)
为什么是这样?
我在sql表中创建了一个write func odbc list记录文件:
[R]
dsn=connector
write=INSERT INTO ast_records (filename,caller,callee,dtime) VALUES
('${ARG1}','${ARG2}','${ARG3}','${ARG4}')
prefix=M
Run Code Online (Sandbox Code Playgroud)
并将其设置在拨号计划中:
exten => _0X.,n,Set(
M_R(${MIXMONITOR_FILENAME}\,${CUSER}\,${EXTEN}\,${DTIME})= )
Run Code Online (Sandbox Code Playgroud)
当我执行它时,我收到一个错误:ast_func_write: M_R 函数未注册:
请注意:带有Windows 的星号
是否可以在一个 shell 中运行“rails 控制台”,然后在另一个 shell 中运行“rails 服务器”,然后将控制台中的代码更改渗透到正在运行的应用程序中?想必这是不可能的,但我只是想检查是否有办法。
编辑:两者都在同一环境中运行。我所说的代码更改是指对类定义的更改(例如重写 Post 模型上的方法)。
我希望在加载页面时启动此效果.现在,当您单击图层时,它就开始了.
$(document).ready(function() {
$("div").click(function () {
$(this).effect("pulsate", { times:3 }, 2000);
});
});
Run Code Online (Sandbox Code Playgroud)
我也用过.load(function),但这没有帮助.
我有输入数字的问题.用户通常输入具有许多零的大数字,并且通常他们缺少一个或两个零,因为难以准确地计数它们.
我认为javascript可以通过向用户显示他们导入的数字,用逗号格式化来解决这个问题.
例如:
输入:| 1230000000000 |
结果:1,230,000,000,000
怎么可以实现呢?
我已经设置了一个ajaxTransport用于我曾经做过的一个小模拟框架,部分基于我发现的这篇文章(感谢那个撰写该帖子的家伙).
$.ajaxTransport('mock', function);
Run Code Online (Sandbox Code Playgroud)
我有一个设置和拆解测试,我需要一种方法来解决这个ajaxTransport.我注册后,如何取消注册?如果无法做到这一点,我该如何覆盖呢?
我试图通过将Java程序转换为Ruby来学习Ruby,但是我一直在想出围绕这段代码的错误:
def create
@user_input = String.new()
# @word_arr = Array.new
print "Enter the text to be converted to pig latin, EOF to quit: "
while gets do
STDOUT.flush
@user_input = gets.chomp
@word_arr = @user_input.string.split(' ')
@word_arr.each { |x| puts x.engToLatin() + ' '}
print "EOF to Quit"
@user_input = ""
end
end
Run Code Online (Sandbox Code Playgroud)
我一直在收到这个错误:
EnglishToPigLatin.rb:14:in `create': private method `chomp' called for nil:NilClass (NoMethodError)
from EnglishToPigLatin.rb:60
Run Code Online (Sandbox Code Playgroud)
这是第60行周围的区域:
#if __FILE__ == $0
mg = EnglishToPigLatin.new
mg.create
#end
Run Code Online (Sandbox Code Playgroud)
基本上我要做的是在仍有输入时,获取输入,将其拆分为单个单词,并通过Pig Latin转换方法运行每个单词.