我是Java的新手,也是JUnit测试的新手.这对我来说绝对清楚是什么Test类,但TestSuite班级让我感到困惑.有人可以解释一下TestSuite是为了什么吗?
我正在尝试搜索亚马逊.我想选择类别,例如.书籍,键入一些搜索条件,例如.java并单击Go按钮.我的问题是单击Go按钮.我有例外:
线程"main"中的异常java.lang.IndexOutOfBoundsException:索引:0,大小:0,java.util.ArrayList.rangeCheck(ArrayList.java:571),位于java.util.ArrayList.get(ArrayList.java:349)at Bot.main中的Bot.clickSubmitButton(Bot.java:77)(Bot.java:111)
这是我的代码:
/**
* @author ivan.bisevac
*/
import java.io.IOException;
import java.net.MalformedURLException;
import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlImageInput;
import com.gargoylesoftware.htmlunit.html.HtmlInput;
import com.gargoylesoftware.htmlunit.html.HtmlOption;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlSelect;
import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;
public class Bot {
private HtmlPage currentPage;
public HtmlPage getCurrentPage() {
return currentPage;
}
public Bot() {
}
/**
* Bot constructor
*
* @param pageAddress
* Address to go.
* @throws IOException
* @throws MalformedURLException
* @throws FailingHttpStatusCodeException
*/
public Bot(String pageAddress) throws FailingHttpStatusCodeException,
MalformedURLException, IOException {
this();
this.goToAddress(pageAddress);
} …Run Code Online (Sandbox Code Playgroud) 我正在使用Capybara(Selenium驱动程序)访问网站上的某些页面.我只需点击数组中的每个项目,然后单击后退按钮.它很好,但每次经过一些迭代后它就会破坏.这是代码:
all(:xpath, '//table[@class="griglia_bordata"]//tr[td]/td/a[1]').each do |a|
a_js_functions << a[:href]
end
a_js_functions.each do |js_for_model|
puts js_for_model
page.execute_script js_for_model
find(:xpath, "//a[text()='Check availability']").click
puts find(".testo_grande_blu_B").text
puts "--------------------------------------------"
find(:xpath, "//a[text()='Back']").click
end
Run Code Online (Sandbox Code Playgroud)
我有输出:
javascript:selectModel('130254')风格:RB2132 --------------------------------------- ----- javascript:selectModel('309257')风格:RB2140 ---------------------------------- ---------- javascript:selectModel('68238')风格:RB3016 ----------------------------- --------------- javascript:selectModel('68248')风格:RB3025 ------------------------ -------------------- javascript:selectModel('68293')风格:RB3026 ------------------- ------------------------- javascript:selectModel('68320')风格:RB3044 -------- ------------------------------ javascript:selectModel('68460')/usr/lib/ruby/1.9.1/net /protocol.rb:146:in
rescue in rbuf_fill': Timeout::Error (Timeout::Error) from /usr/lib/ruby/1.9.1/net/protocol.rb:140:inrbuf_fill'来自/usr/lib/ruby/1.9.1/net/protocol.rb:122:inreaduntil' from /usr/lib/ruby/1.9.1/net/protocol.rb:132:inreadline'来自/usr/lib/ruby/1.9.1/net/http.rb :2562:在read_status_line' from /usr/lib/ruby/1.9.1/net/http.rb:2551:inread_new'中来自/usr/lib/ruby/1.9.1/net/http.rb:1319:inblock in transport_request' from /usr/lib/ruby/1.9.1/net/http.rb:1316:incatch'来自/usr/lib/ruby/1.9.1/net/http.rb:1316:intransport_request' from /usr/lib/ruby/1.9.1/net/http.rb:1293:in请求来自/usr/lib/ruby/1.9.1/net/http.rb:1286:inblock in request' from /usr/lib/ruby/1.9.1/net/http.rb:745:instart'来自/usr/lib/ruby/1.9.1/net/http.rb:1284:in …
"重要的是要指出模板的内容字段默认设置为null(因为Java在创建时与所有未初始化的对象字段一起使用)."
它来自"JavaSpaces Principles Patterns and Practice"一书
这是代码:
public class Message implements Entry {
public String content;
public Message() {
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道这是否属实,因为我在互联网上的某个地方看到这不是真的吗?
目前我有SelectList写入ID,并在表单上显示FirstName.
ViewBag.Person = new SelectList(db.Person, "ID", "FirstName");
Run Code Online (Sandbox Code Playgroud)
如何将FirstName和LastName连接到SelectList?就像是:
ViewBag.Person = new SelectList(db.Person, "ID", "FirstName & LastName");
Run Code Online (Sandbox Code Playgroud) 假设有Foo服务,它有RESTful API.如果我想为它创建包装器:
bundle gem foo-api-client
Run Code Online (Sandbox Code Playgroud)
然后它创建以下结构:
foo-api-client/Gemfile
foo-api-client/Rakefile
foo-api-client/LICENSE.txt
foo-api-client/README.md
foo-api-client/.gitignore
foo-api-client/foo-api-client.gemspec
foo-api-client/lib/foo/api/client.rb
foo-api-client/lib/foo/api/client/version.rb
Run Code Online (Sandbox Code Playgroud)
我不需要单独的api模块,我想我应该离开它还是尝试改为:fooapi-client/lib/fooapi/client.rb
这有什么命名约定吗?
我已经打开了jQuery 1.7.1库并想学习代码,但我发现这些函数是以奇怪的方式声明的(对我而言).例如:
show: function() {
//some code here
},
Run Code Online (Sandbox Code Playgroud)
我学会了用这种方式定义函数:
function show() {
//some code here
}
Run Code Online (Sandbox Code Playgroud)
有人可以解释一下为什么show function不是第二种方式写的(就像大多数互联网上的教程一样)?
可能重复:
ruby数组元素分组
例.给定数组a:
a = [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
它的长度是3所以我想打印所有2长度数组.这些是:
[1, 2]
[1, 3]
[2, 3]
Run Code Online (Sandbox Code Playgroud)
我不知道Ruby中是否有一些方法可以获得子集数组.如果没有这样的方法,最有效的方法是实现这一点.
我正试图从当前时间开始计算小时,分钟和秒,并将其打印成"hourminutesecond"格式.例如"121103".但是当我尝试使用下一个代码时,没有打印前导零
irb(main):021:0> ct = Time.now
=> 2012-11-06 12:11:03 +0100
irb(main):022:0> "#{ct.hour}#{ct.min}#{ct.sec}"
=> 12113
Run Code Online (Sandbox Code Playgroud)
输出为"12113",但我想要"121103".
是否有方法或选项.我可以用正则表达式提取它,但只是想知道是否有更简单的方法来做到这一点.
我正在尝试使用Capybara附加文件.输入元素是:
<input type="file" multiple="multiple" name="uploadfile[]" style="position: absolute; margin: 0px 0px 0px -175px; padding: 0px; width: 220px; height: 30px; font-size: 14px; opacity: 0; cursor: pointer; display: block; z-index: 2147483583; top: 3331px; left: 436px;">
Run Code Online (Sandbox Code Playgroud)
附加文件的代码是:
attach_file 'uploadfile[]', '/home/user/image.jpg'
Run Code Online (Sandbox Code Playgroud)
但它返回错误:
biske@biske:~/Documents/Aptana Studio 3 Workspace/AddPlace$ ruby
test.rb [remote server]
file:///tmp/webdriver-profile20130223-30353-dw596v/extensions/fxdriver@googlecode.com/components/command_processor.js:7537:in
`fxdriver.preconditions.visible': Element is not currently visible and
so may not be interacted with
(Selenium::WebDriver::Error::ElementNotVisibleError) from [remote
server]
file:///tmp/webdriver-profile20130223-30353-dw596v/extensions/fxdriver@googlecode.com/components/command_processor.js:10207:in
`DelayedCommand.prototype.checkPreconditions_' from [remote server]
file:///tmp/webdriver-profile20130223-30353-dw596v/extensions/fxdriver@googlecode.com/components/command_processor.js:10226:in
`DelayedCommand.prototype.executeInternal_/h' from [remote server]
file:///tmp/webdriver-profile20130223-30353-dw596v/extensions/fxdriver@googlecode.com/components/command_processor.js:10231:in
`DelayedCommand.prototype.executeInternal_' from [remote server]
file:///tmp/webdriver-profile20130223-30353-dw596v/extensions/fxdriver@googlecode.com/components/command_processor.js:10171:in
`DelayedCommand.prototype.execute/<' …Run Code Online (Sandbox Code Playgroud) ruby ×5
java ×3
capybara ×2
selenium ×2
arrays ×1
asp.net-mvc ×1
date ×1
declaration ×1
function ×1
gem ×1
htmlunit ×1
javascript ×1
jquery ×1
junit ×1
selectlist ×1
syntax ×1
test-suite ×1
variables ×1
xpath ×1