«rspec» 태그된 질문

RSpec은 JBehave에서 영감을받은 Ruby 프로그래밍 언어 용 BDD (행동 중심 개발) 프레임 워크입니다. JMock을 기반으로하는 완전히 통합 된 모의 프레임 워크가 포함되어 있습니다. 프레임 워크는 DSL (도메인 특정 언어)로 간주 될 수 있으며 자연어 사양과 유사합니다.

6
적절한 오류 메시지와 함께 Capybara를 사용하여 요소 수를 주장하는 방법은 무엇입니까?
카피 바라에서는 다음과 같이 할 수 있습니다. page.should have_css("ol li", :count => 2) 그러나 페이지에 일치하는 요소가 하나만 있다고 가정하면 오류는 그다지 설명 적이 지 않습니다. 1) initial page load shows greetings Failure/Error: page.should have_css("ol li", :count => 2) expected css "ol li" to return something 이 다소 모호한 오류 …
86 rspec  dsl  capybara 

4
RSpec : 다중 변경 예상
기능 사양에서 양식을 제출할 때 모델의 많은 변경 사항을 확인하고 싶습니다. 예를 들어 사용자 이름이 X에서 Y로 변경되었고 암호화 된 암호가 임의의 값으로 변경되었는지 확인하고 싶습니다. 이미 그것에 대한 몇 가지 질문이 있다는 것을 알고 있지만 나에게 적합한 답을 찾지 못했습니다. 가장 정확한 대답은 ChangeMultipleMichael Johnston 의 matcher 처럼 보입니다 …

5
요청 사양의 스터 빙 인증
요청 사양을 작성할 때 세션 및 / 또는 스텁 컨트롤러 메서드를 어떻게 설정합니까? 통합 테스트에서 인증 스텁을 시도하고 있습니다-rspec / requests 다음은 테스트의 예입니다. require File.dirname(__FILE__) + '/../spec_helper' require File.dirname(__FILE__) + '/authentication_helpers' describe "Messages" do include AuthenticationHelpers describe "GET admin/messages" do before(:each) do @current_user = Factory :super_admin login(@current_user) end it …

3
Rails / RSpec에서 예외 발생을 테스트하는 방법은 무엇입니까?
다음 코드가 있습니다. def index @car_types = car_brand.car_types end def car_brand CarBrand.find(params[:car_brand_id]) rescue ActiveRecord::RecordNotFound raise Errors::CarBrandNotFound.new end RSpec을 통해 테스트하고 싶습니다. 내 코드는 다음과 같습니다. it 'raises CarBrandNotFound exception' do get :index, car_brand_id: 0 expect(response).to raise_error(Errors::CarBrandNotFound) end ID가 0 인 CarBrand가 존재하지 않으므로 컨트롤러 코드에서 Errors :: CarBrandNotFound가 발생하지만 테스트 …

3
RSpec의 주제와 let의 차이점은 무엇입니까? 언제 사용해야합니까?
http://betterspecs.org/#subject 에 subject및 에 대한 정보가 let있습니다. 그러나 나는 그들 사이의 차이점에 대해 여전히 불분명합니다. 또한, SO 포스트 RSpec 테스트에서 before, let 및 subject를 사용하는 것에 대한 주장은 무엇입니까? subject또는을 사용하지 않는 것이 좋습니다 let. 어디로 갈까요? 난 정말 혼란스러워.

1
RSpec에서 IT 블록과 지정 블록의 차이점
RSpec에서 IT 블록과 지정 블록의 차이점은 무엇입니까? subject { MovieList.add_new(10) } specify { subject.should have(10).items } it { subject.track_number.should == 10} 그들은 같은 일을하는 것 같습니다. 확실히 확인하는 것뿐입니다.

6
레이크 스펙을 실행하지 않고 Rails rspec 테스트를 위해 테스트 데이터베이스를 준비하려면 어떻게해야합니까?
중요한 문제 해결 후, rake specrspec을 직접 (예 : 사양의 하위 집합에서) 실행하기 전에 한 번 실행해야한다는 것을 알게 되었습니다 (control-c로 중단 할 수 있음). 우리는 Rails 3.0.7과 RSpec 2.5.0을 실행하고 있습니다. 분명히, rake는 몇 가지 중요한 데이터베이스 설정 작업 / 코드를 실행하고 있습니다 (루트 레벨 레일 Rakefile 및 가능하면 …

8
일부 JS가 실행 된 후 Capybara가 가시성을 확인하도록하는 방법은 무엇입니까?
페이지를로드 한 후 xhr에서 반환 한 데이터를 기반으로 다양한 항목을 실행하고 숨기고 표시하는 코드가 있습니다. 내 통합 테스트는 다음과 같습니다. it "should not show the blah" do page.find('#blah').visible?.should be_true end 이 테스트가 실행되는 컨텍스트의 페이지로 수동으로 이동하면 #blah가 예상대로 표시 되지 않습니다 . Capybara가 페이지의 초기 상태 (이 경우에는 보이지 …

5
Rspec 3 플래시 메시지 테스트 방법
rspec을 사용하여 컨트롤러의 동작 및 플래시 메시지 존재를 테스트하고 싶습니다. 액션 : def create user = Users::User.find_by_email(params[:email]) if user user.send_reset_password_instructions flash[:success] = "Reset password instructions have been sent to #{user.email}." else flash[:alert] = "Can't find user with this email: #{params[:email]}" end redirect_to root_path end 사양 : describe "#create" do it …

5
factory_bot에서 배열 / 해시를 정의하는 방법은 무엇입니까?
Dropbox REST 서비스의 일부 반환 값을 시뮬레이션하는 테스트를 작성하여 중첩 된 해시를 사용하여 배열의 데이터를 반환합니다. 반환 결과가 내부에있는 배열이기 때문에 내 공장을 코딩하는 방법을 알아내는 데 문제가 있습니다. 여기에 무엇이 갈까요? Factory.define :dropbox_hash do ?? end Dropbox 데이터는 다음과 같습니다. ["/home", {"revision"=>48, "rev"=>"30054214dc", "thumb_exists"=>false, "bytes"=>0, "modified"=>"Thu, 29 Dec 2011 …

1
Ruby Rspec : 소스에 접근자를 추가하지 않고 인스턴스 변수 테스트
다음 방법을 테스트하려고합니다. def unprocess_move(board, move) if move[0].instance_of?(Array) multi_move = @multi_move.pop(2).reverse multi_move.each do |single_move| unapply_move(board, single_move) end else board = unapply_move(board, move) end board end @multi_move의 상태를 설정하고 싶지만 테스트를 위해 접근자를 추가하고 싶지는 않습니다. 접근 자없이 그렇게 할 수있는 방법이 있습니까? 감사.

4
레일스 rspec 전과 각 전
contest_entry_spec.rb require 'spec_helper' describe ContestEntry do before(:all) do @admission=Factory(:project_admission) @project=Factory(:project_started, :project_type => @admission.project_type) @creative=Factory(:approved_creative, :creative_category => @admission.creative_category) @contest_entry=Factory(:contest_entry, :design_file_name => 'bla bla bla', :owner => @creative, :project => @project) end context 'non-specific tests' do subject { @contest_entry } it { should belong_to(:owner).class_name('User') } it { should belong_to(:project) } it { …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.