我的UsersControllerTest当前失败,因为我在UsersController #create中使用verify_recaptcha.如何编写我的测试,以便使用params [:user]传递已知良好的CAPTCHA响应?我正在使用reCAPTCHA,但我想这个问题适用于任何CAPTCHA实现.
这是我的UsersController #create
def create
@user = User.new(params[:user])
if verify_recaptcha(@user) && @user.save
flash[:notice] = "Account registered!"
redirect_to new_order_url
else
flash.now[:error] = "Account not registered!"
render :action => :new
end
end
Run Code Online (Sandbox Code Playgroud)
这是我的功能测试
test "should create user" do
assert_difference('User.count') do
post :create, :user => { :login => "jdoe",
:password => "secret",
:password_confirmation => "secret",
:first_name => 'john',
:last_name => 'doe',
:address1 => '123 Main St.',
:city => 'Anytown',
:state => 'XY',
:zip => '99999',
:country => 'United States',
:email => …Run Code Online (Sandbox Code Playgroud) 我正在为需要用户身份验证的页面编写功能测试.我正在使用sfDoctrineGuard插件.
如何在测试中验证用户身份?
我是否必须通过登录屏幕输入每个测试?
这是我的错误代码:
$b->post('/sfGuardAuth/signin',
array('signin[password]' => 'password',
'signin[username]' => 'user',
'signin[_csrf_token]' => '7bd809388ed8bf763fc5fccc255d042e'))->
with('response')->begin()->
checkElement('h2', 'Welcome Humans')->
end()
Run Code Online (Sandbox Code Playgroud)
谢谢
我需要以REST格式测试Web API函数.目前使用Selenium RC对网站进行功能测试.并使用XmlUnit和HttpClient功能测试我们的REST API.但是,如果我们能够真正将功能测试代码分离到所有的硒中,那么生活似乎会更容易.特别是使用Selenium 2.0的WebDriver,使用它来测试XML响应比以往任何时候都容易XPath.
我在Pro XmlUnit+HttpClient营地的想法:
我在Pro Selenium WebDriver营地的想法:
我们正在使用Spring 3和hibernate.什么是最好的功能测试我们的API?
testing selenium functional-testing selenium-rc web-api-testing
如何在功能测试中设置请求格式?
我正在尝试做类似的事情:
get :show, :id => '1', :format => :xml
但这不起作用.
今天是个好日子,
在过去的几天里,我一直在研究测试驱动开发,并决定我也需要学习它.虽然我无法弄清楚如何准确地做到这一点.
我的项目依赖于Symfony2.1.6框架和Doctrine,所以我有一些需要填充的数据库表.
书(1,n) - (0,n)类型
现在,如果我想插入一个类型记录,我首先需要编写一个测试来确保所有内容都被插入(或者我错了吗?)
现在的问题是我不知道如何访问我的数据库,因为它是由框架管理的.
我唯一能找到的是使用LiipFunctionalTestBundle https://github.com/liip/LiipFunctionalTestBundle,它每次运行测试时都会创建并恢复临时数据库.我按照说明设置了所有内容.
编辑:我的app/config/config_test.yml现在看起来像这样:
imports:
- { resource: config_dev.yml }
framework:
test: ~
session:
storage_id: session.storage.filesystem
liip_functional_test: ~
web_profiler:
toolbar: false
intercept_redirects: false
swiftmailer:
disable_delivery: true
liip_functional_test:
cache_sqlite_db: true
doctrine:
dbal:
default_connection: default
connections:
default:
driver: pdo_sqlite
path: %kernel.cache_dir%/test.db
Run Code Online (Sandbox Code Playgroud)
所以现在我有一个GenreTest类:
Liip没有文档所以我只是尝试了这样的方法.
use Liip\FunctionalTestBundle\Test\WebTestCase;
class GenreTest extends WebTestCase {
public function testInsert() {
$container = $this->getContainer();
$registry = $container->get('doctrine');
$em = $registry->getEntityManager(null);
$genre = new Genre();
$genre->setName("testGenre");
$em->persist($genre);
$em->flush();
$result = $em->createQuery("SELECT …Run Code Online (Sandbox Code Playgroud) php doctrine functional-testing symfony-2.1 liipfunctionaltestbundle
我目前正在为我的控制器编写功能测试,我想检查是否有线路
这是一条测试线
出现在我的页面上.我试过用
assert_select "p" do
assert_select "this is the test line"
end
Run Code Online (Sandbox Code Playgroud)
但我觉得这条线路有问题.
在rails 3版本中执行此操作的最佳方法是什么?
在尝试编写rSpec测试时,我对如何生成具有关联的FactoryGirl记录有些困惑。
基本上,我有一个Quiz模型和一个Question模型。它们通过HABTM关联进行关联。
这是我的Quiz工厂:
FactoryGirl.define do
factory :quiz do
description 'Test'
# after(:create) { |quiz| quiz.create_sample_questions }
# trait :with_questions do
# after :create do |quiz|
# 5.times do |q|
# quiz.questions << FactoryGirl.create(:question, :with_answers)
# end
# end
# end
end
end
Run Code Online (Sandbox Code Playgroud)
最好在这里创建一个特征,然后为测验创建示例问题吗?还是应该使用after create方法来做到这一点?
两者似乎都不起作用,我的特质似乎也没有引发问题。
谢谢!
我正在开发一个新的小项目.我理解实施自动化测试以提高质量和可维护性的重要性.但是如果在小型应用程序中功能测试就足够了,我会徘徊.对我的所有功能真的有必要实施单元测试吗?功能测试不保证小型应用程序的质量吗?
嗨,我正在写一个功能测试,我想知道如何简单地点击一个按钮,我有一个隐藏的表单,在按钮点击后显示
我尝试像这样进行正常点击:
$button = $crawler->filter('button:contains("Add")');
$crawler = $client->click($button);
Run Code Online (Sandbox Code Playgroud)
但似乎click()函数采用链接对象而不是Crawler对象.
我怎么能这样做?
我的目标是能够为Express.js服务器编写纯路由.这甚至可能吗?
为了访问数据库和我知道的东西,我可以使用神话般的Futuremonad保持纯净,但路线渲染本身怎么样?
我发现的最大困难之一是路线可能以不同的方式结束,例如:
使用Futuremonad,我可以处理错误和成功案例,但之后的成功案例没有更多的粒度.
有没有办法为Express.js编写纯粹且完全可测试的路由?
javascript functional-programming functional-testing node.js express
testing ×5
doctrine ×2
button ×1
captcha ×1
click ×1
controller ×1
express ×1
factory-bot ×1
javascript ×1
node.js ×1
php ×1
phpunit ×1
recaptcha ×1
ruby ×1
selenium ×1
selenium-rc ×1
symfony ×1
symfony-1.4 ×1
symfony-2.1 ×1
symfony1 ×1
tdd ×1
unit-testing ×1