Что делает ключевое слово "it" в RSpec?

Я следую за rails3tutorial, и я не понимаю смысла ключевого слова "it" при выполнении некоторых тестов следующим образом:

require 'spec_helper'

describe UsersController do
  render_views

  describe "GET 'new'" do
    it "should be successful" do
      get 'new'
      response.should be_success
    end

    it "should have the right title" do
      get 'new'
      response.should have_selector("title", :content => "Sign up")
    end
  end
end

фрагмент кода происходит из: http://ruby.railstutorial.org/chapters/filling-in-the-layout#top, содержащего список 5.26

Ответ 1

Это не ключевое слово Ruby, это часть Rspec framework.

it содержит примеры кода, которые иллюстрируют аспект поведения, являющийся определены. Он состоит из двух основных частей: строки описания и пример кода, в блоке do/end.

Ответ 2

Я думаю, что другие ответы могут быть более ясными и что может быть тем, что изначально вас смутило, заключается в том, что it разбивает большинство обычных конвенций для наименования методов (ничего о том, как этот метод описывает, например, что он делает) чтобы код в целом считался своего рода предложением.

Поэтому вместо того, чтобы просто создавать набор тестов, библиотека пытается побудить вас описать ваше приложение с помощью тестов таким образом, чтобы он соответствовал удобочитаемой спецификации.

Ответ 3

Это не ключевое слово. Это просто метод, предоставляемый RSpec, используемый для описания образцов выборки. Подробнее см. docs.

Ответ 4

В общем смысле тестирования мы используем описание для описания поведения класса:

describe Hash do

end

Тесты записываются с использованием блока. Вот пример того, как вы можете написать спецификацию для класса Hash:

describe Hash do
  it "should return a blank instance" do
    Hash.new.should == {}
  end
end

Для получения дополнительной справки используйте

http://blog.teamtreehouse.com/an-introduction-to-rspec

Ответ 5

Это ключевое слово Rspec. RSpec использует слова "описать" и "это", чтобы мы могли выражать понятия как разговор:

"Описать учетную запись при ее первом открытии". "У него баланс нуля". Метод описания создает группу примеров. В пределах блока, переданного описать, что вы можете объявлять вложенные группы, используя описание или контекст методы, или вы можете объявлять примеры, используя его или указывая методы.

Под капотом примерная группа - это класс, в котором блок передан описывается или контекст. Блоки, переданные ему, оцениваются в контексте экземпляра этого класса.

Ответ 6

Как говорили другие, it не является ключевым словом.

Таким образом, многие слова, которые являются ключевыми словами, не являются ключевыми словами. Например, puts выглядит как ключевое слово, но это всего лишь метод в модуле Kernel.