Hi Alexander
The recommended use of `subject` has evolved over time, so you’ll find all of the examples you mention in use in various projects.
Our advice would be to use subject to draw attention to your “subject under test” but also to give it a descriptive name. We would also advice using that name, subject doesn’t mean much to a reader in context. We also advice not using the implicit subject and to always have a doc string. What that means in your tests depends on your implementation, if you are doing unit style tests such as a person name, the subject is really the name, not the person.
But for example, this is how I would describe #name in your example.
```
class Person
def initialize(first_name, last_name)
@first_name = first_name
@last_name = last_name
end
def name
[@first_name, @last_name].join(“ “)
end
end
RSpec.describe “Person” do
describe “#name” do
subject(:name) { Person.new(“Jon”, “Rowe”).name }
it “combines first and last names” do
expect(name).to eq “Jon Rowe"
end
end
end
```
Regards
Jon Rowe
---------------------------