我正在与Capybara一起运行Cucumber测试,我希望能够使用不同的驱动程序(如selenium或poltergeist)运行多组测试。我已经注册了所有驱动程序,并可以通过以下方式在环境变量之间进行切换:
if ENV['DEFAULT_DRIVER'] == ":poltergeist" do
Capybara.default_driver = :poltergeist
end
我的问题是,有没有办法在不使用if块的情况下在环境变量中传递驱动程序?
理想情况下,我想Capybara.default_driver = ENV['DEFAULT_DRIVER'] || :selenium
,但这会产生错误。
答案 0 :(得分:0)
您应该使用:poltergeist
将ENV变量转换为符号,然后从变量中删除冒号。现在你正在使用“:poltergeist”,这是一个字符串,而不是Capybara.default_driver = ENV['DEFAULT_DRIVER'].to_sym
,这是一个符号。
ENV['DEFAULT_DRIVER']
是“poltergeist”,则 override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: false)
var7 = lat[indexPath.item]
var6 = long[indexPath.item]
var5 = items[indexPath.item]
var1 = detail[indexPath.item]
var2 = date[indexPath.item]
var3 = wop[indexPath.item]
var4 = ViewController()
nextView.locationPassed = var1
//self.performSegueWithIdentifier("DetailPush", sender: self)
println("value stored in var1: \(var1)")
//println("The selected indexPath is \(indexPath.item + 1)")
println("The stored id is: \(storeSend)")
}
将有效。