際際滷

際際滷Share a Scribd company logo
BDD Test Structure
弌亠亞亠亶 舒舒仆仂于
User Story
As a [Role]
I want [Feature]
So that I receive [Value]
Scenario: how?
Given [State]
When [Action]
Then [Reaction]
Domain Model
User  亰舒亠亞亳亳仂于舒仆仆亶 仗仂仍亰仂于舒亠仍
Habit  仗亳于从舒
Message  仂仂弍亠仆亳亠 仂 User 从 User
Chat  仄亠仂 仂弍亠仆亳 亟于 User
User Story: Send Message
As a User
I want to send Message to another User
who forms the same Habit
So that I receive motivation
Scenario: Send Message
Given User 1 and User 2 have the same
Habit
When User 1 sends Message to User 2
Then Both Users receive the Message
Example
public void bothUsersShouldRecieveMessagesFromEachOther ()
{
User sender = new User();
User recipient = new User();
Chat chat = new Chat(sender, recipient);
given(sender.hasHabit(Refactoring));
given(recipient.hasHabit(Refactoring));
chat.sendMessage("Aloha!");
then(chat.hasMessage(Aloha!));
}
+ sendMessage(User who, User whom, String message)
+ getChat(User, User)
 Map<Chat> chats
(key: username1+username2, val: Chat)
ChatManager
+ sendMessage(User whoSent, String message)
+ List<Message> getMessages()
 List<Message> messages
Chat
+ Message(User user, String message)
+ getUser()
+ getMessage()
 User user
 String message
Message
 String username
 List<Habit>
User
 String name
Habit
<<sendMessage>>
<<creates>>
<<creates>>
Chat with 束whom.name損
Message.user: message
Message.user: message
Message.user: message

More Related Content

More from Magneta AI (20)

亰仂亳仆 Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia
亰仂亳仆   Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia亰仂亳仆   Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia
亰仂亳仆 Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia
Magneta AI
舒弍舒仄亠仆从仂 从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从
舒弍舒仄亠仆从仂   从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从舒弍舒仄亠仆从仂   从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从
舒弍舒仄亠仆从仂 从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从
Magneta AI
仗舒于仍仂于 于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳
仗舒于仍仂于   于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳仗舒于仍仂于   于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳
仗舒于仍仂于 于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳
Magneta AI
亳仆 从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍
亳仆   从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍亳仆   从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍
亳仆 从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍
Magneta AI
亠仆从仂于舒 舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...
亠仆从仂于舒   舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...亠仆从仂于舒   舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...
亠仆从仂于舒 舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...
Magneta AI
仄舒亳亠于从亳亶 仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳
仄舒亳亠于从亳亶   仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳仄舒亳亠于从亳亶   仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳
仄舒亳亠于从亳亶 仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳
Magneta AI
仍亳仆 舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015
仍亳仆   舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015仍亳仆   舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015
仍亳仆 舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015
Magneta AI
仍仂亠于 从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟
仍仂亠于   从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟仍仂亠于   从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟
仍仂亠于 从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟
Magneta AI
从仂亠从亳亶 从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于
从仂亠从亳亶   从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于从仂亠从亳亶   从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于
从仂亠从亳亶 从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于
Magneta AI
亰亳仆仂于亠于舒 仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆
亰亳仆仂于亠于舒   仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆亰亳仆仂于亠于舒   仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆
亰亳仆仂于亠于舒 仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆
Magneta AI
于亳仆仂亞舒亟仂于舒 于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...
于亳仆仂亞舒亟仂于舒   于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...于亳仆仂亞舒亟仂于舒   于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...
于亳仆仂亞舒亟仂于舒 于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...
Magneta AI
于亠亠舒从. 仗仂仂亠仆亳亠 从仍 Dev ops. v0.5 copy
于亠亠舒从. 仗仂仂亠仆亳亠  从仍 Dev ops. v0.5 copy于亠亠舒从. 仗仂仂亠仆亳亠  从仍 Dev ops. v0.5 copy
于亠亠舒从. 仗仂仂亠仆亳亠 从仍 Dev ops. v0.5 copy
Magneta AI
弍仂仂亟亳仆 仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠
弍仂仂亟亳仆   仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠弍仂仂亟亳仆   仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠
弍仂仂亟亳仆 仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠
Magneta AI
弍仂亞仍舒于从亳亶 Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠
弍仂亞仍舒于从亳亶   Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠弍仂亞仍舒于从亳亶   Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠
弍仂亞仍舒于从亳亶 Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠
Magneta AI
舒亠亠于舒 仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9
舒亠亠于舒   仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9舒亠亠于舒   仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9
舒亠亠于舒 仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9
Magneta AI
亳仍亳仗仗仂于 Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于
亳仍亳仗仗仂于   Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于亳仍亳仗仗仂于   Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于
亳仍亳仗仗仂于 Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于
Magneta AI
舒亰仄仂于从舒 仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...
舒亰仄仂于从舒   仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...舒亰仄仂于从舒   仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...
舒亰仄仂于从舒 仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...
Magneta AI
仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄
仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄
仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄
Magneta AI
仄亳仆舒 从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠
仄亳仆舒   从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠仄亳仆舒   从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠
仄亳仆舒 从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠
Magneta AI
亳仍亳仗仗仂于 亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶
亳仍亳仗仗仂于   亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶亳仍亳仗仗仂于   亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶
亳仍亳仗仗仂于 亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶
Magneta AI
亰仂亳仆 Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia
亰仂亳仆   Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia亰仂亳仆   Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia
亰仂亳仆 Scrum, kanban, 仂 亟舒仍亠. 亳仂亳 nokia
Magneta AI
舒弍舒仄亠仆从仂 从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从
舒弍舒仄亠仆从仂   从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从舒弍舒仄亠仆从仂   从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从
舒弍舒仄亠仆从仂 从舒从 亟亠仍舒 仆亢仆亶 仍ミ観礆 仗仂亟从
Magneta AI
仗舒于仍仂于 于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳
仗舒于仍仂于   于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳仗舒于仍仂于   于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳
仗舒于仍仂于 于亠, 仂 于 仂亠仍亳 亰仆舒 仂 ミ出狐 亠舒, 仆仂 弍仂磿亳 仗仂亳
Magneta AI
亳仆 从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍
亳仆   从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍亳仆   从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍
亳仆 从舒从 于仆亠亟亳 Agile, 仂弍 仆亳从仂 仆亠 亰舒仄亠亳仍
Magneta AI
亠仆从仂于舒 舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...
亠仆从仂于舒   舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...亠仆从仂于舒   舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...
亠仆从仂于舒 舒亰仆仂亠 亠仂 亟仍 舒亰仆 从仂仄舒仆亟 (从舒从 仗仂于亠亳 亠仂 亟仍 仆仂于亳从仂于, ...
Magneta AI
仄舒亳亠于从亳亶 仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳
仄舒亳亠于从亳亶   仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳仄舒亳亠于从亳亶   仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳
仄舒亳亠于从亳亶 仗 舒仄舒. 于仂仍亳 仆亠仍亰 仂舒于亳
Magneta AI
仍亳仆 舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015
仍亳仆   舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015仍亳仆   舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015
仍亳仆 舒亳亠从亳亠 舒仆舒仍亳亰舒仂 亳亠仄 1 ad2015
Magneta AI
仍仂亠于 从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟
仍仂亠于   从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟仍仂亠于   从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟
仍仂亠于 从仂仆仂仍仆亠 从舒 舒舒 于 舒仆舒仍亳亰亠 亟亠亠仍仆仂亳 Scrum 从仂仄舒仆亟
Magneta AI
从仂亠从亳亶 从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于
从仂亠从亳亶   从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于从仂亠从亳亶   从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于
从仂亠从亳亶 从舒从 仄 仍亳仍亳 从仗亠仆 仂亠仆从 仗仂亠从仂于
Magneta AI
亰亳仆仂于亠于舒 仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆
亰亳仆仂于亠于舒   仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆亰亳仆仂于亠于舒   仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆
亰亳仆仂于亠于舒 仗仂于亠仆亳亠 亠从亳于仆仂亳 从仂仄舒仆亟. 亠仂仗亠从亳于舒 从舒从 亳仆仄亠仆
Magneta AI
于亳仆仂亞舒亟仂于舒 于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...
于亳仆仂亞舒亟仂于舒   于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...于亳仆仂亞舒亟仂于舒   于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...
于亳仆仂亞舒亟仂于舒 于仆亠亟亠仆亳亠 亳亰仄亠仆亠仆亳亶 弍亠亰 亟仍亳仆仆 亟仂从仄亠仆仂于, 亟仂仍亞亳 仂亞仍舒仂于舒仆亳亶...
Magneta AI
于亠亠舒从. 仗仂仂亠仆亳亠 从仍 Dev ops. v0.5 copy
于亠亠舒从. 仗仂仂亠仆亳亠  从仍 Dev ops. v0.5 copy于亠亠舒从. 仗仂仂亠仆亳亠  从仍 Dev ops. v0.5 copy
于亠亠舒从. 仗仂仂亠仆亳亠 从仍 Dev ops. v0.5 copy
Magneta AI
弍仂仂亟亳仆 仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠
弍仂仂亟亳仆   仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠弍仂仂亟亳仆   仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠
弍仂仂亟亳仆 仂弍 仄仗亳亳亠从仂亶 舒亰舒弍仂从亠
Magneta AI
弍仂亞仍舒于从亳亶 Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠
弍仂亞仍舒于从亳亶   Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠弍仂亞仍舒于从亳亶   Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠
弍仂亞仍舒于从亳亶 Agile days 仆亠仗亠于仆仂亠 从舒亠于仂 于 仆亠仗亠于仆仂亶 舒亰舒弍仂从亠
Magneta AI
舒亠亠于舒 仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9
舒亠亠于舒   仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9舒亠亠于舒   仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9
舒亠亠于舒 仗仂舒亞仂于舒 亳仆从亳 仗仂 仗亠亠仂亟 仆舒 仗亳仆 16 从 9
Magneta AI
亳仍亳仗仗仂于 Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于
亳仍亳仗仗仂于   Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于亳仍亳仗仗仂于   Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于
亳仍亳仗仗仂于 Material design 亟仍 仗仂亠从亳仂于舒仆亳 仗仂亟从仂于
Magneta AI
舒亰仄仂于从舒 仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...
舒亰仄仂于从舒   仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...舒亰仄仂于从舒   仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...
舒亰仄仂于从舒 仂仍 仄仗舒亳亳 于 仂亰亟舒仆亳亳 仗仂亟从舒. 从舒从 仆舒亶亳 亠舒仍仆 弍仂仍 从仍亳亠仆...
Magneta AI
仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄
仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄
仗仍舒亠于舒 亟舒仆舒, 仂从仂仍舒亟 仍亠亞仂-从舒仄
Magneta AI
仄亳仆舒 从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠
仄亳仆舒   从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠仄亳仆舒   从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠
仄亳仆舒 从仂亳仆亞 仆舒 仗舒从亳从亠, 舒弍仂亳亠 仗亳仄亠
Magneta AI
亳仍亳仗仗仂于 亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶
亳仍亳仗仗仂于   亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶亳仍亳仗仗仂于   亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶
亳仍亳仗仗仂于 亳仆舒仗亠仆亠于仂 亳 舒舒仗-从仍舒 从舒从 亳仆仄亠仆 亟仍 亳仆仆仂于舒亳亶
Magneta AI

Recently uploaded (20)

Chimera Tool 41.26.2101 Crack License Key Free Download
Chimera Tool 41.26.2101 Crack License Key Free DownloadChimera Tool 41.26.2101 Crack License Key Free Download
Chimera Tool 41.26.2101 Crack License Key Free Download
nasirali027m
data warehousing architecture presentation
data warehousing architecture presentationdata warehousing architecture presentation
data warehousing architecture presentation
Bobby Pra A
Disaster Recovery in Azure: Architecture and Best Practices
Disaster Recovery in Azure: Architecture and Best PracticesDisaster Recovery in Azure: Architecture and Best Practices
Disaster Recovery in Azure: Architecture and Best Practices
San sri
SAP ESS : W-35_TimeEntry Detailed Document.pdf
SAP ESS : W-35_TimeEntry Detailed Document.pdfSAP ESS : W-35_TimeEntry Detailed Document.pdf
SAP ESS : W-35_TimeEntry Detailed Document.pdf
sandeepkrm792
The Role of Blockchain in Transparent & Secure Procurement.pptx
The Role of Blockchain in Transparent & Secure Procurement.pptxThe Role of Blockchain in Transparent & Secure Procurement.pptx
The Role of Blockchain in Transparent & Secure Procurement.pptx
asmith539880
VADY: Revolutionizing Business Intelligence with AI-Powered Insights
VADY: Revolutionizing Business Intelligence with AI-Powered InsightsVADY: Revolutionizing Business Intelligence with AI-Powered Insights
VADY: Revolutionizing Business Intelligence with AI-Powered Insights
NewFangledVision
Benefits of flutter development reasons to choose in 2025.pptx
Benefits of flutter development reasons to choose in 2025.pptxBenefits of flutter development reasons to choose in 2025.pptx
Benefits of flutter development reasons to choose in 2025.pptx
seo02siddhiinfosoft
Dijkstras single source path algorthim
Dijkstras   single source path algorthimDijkstras   single source path algorthim
Dijkstras single source path algorthim
Bobby Pra A
AI Invoice Processing: Automating Supplier Invoices with AstuteAP
AI Invoice Processing: Automating Supplier Invoices with AstuteAPAI Invoice Processing: Automating Supplier Invoices with AstuteAP
AI Invoice Processing: Automating Supplier Invoices with AstuteAP
AstuteBusiness
Odoo WooCommerce Connector, Multiple Woocommerce store connection
Odoo WooCommerce Connector,  Multiple Woocommerce store connectionOdoo WooCommerce Connector,  Multiple Woocommerce store connection
Odoo WooCommerce Connector, Multiple Woocommerce store connection
Aagam infotech
Google Cloud Build - Overview and Examples
Google Cloud Build - Overview and ExamplesGoogle Cloud Build - Overview and Examples
Google Cloud Build - Overview and Examples
Evgenii Studitskikh
M251_Meeting 5 (Inheritance and Polymorphism).ppt
M251_Meeting 5 (Inheritance and Polymorphism).pptM251_Meeting 5 (Inheritance and Polymorphism).ppt
M251_Meeting 5 (Inheritance and Polymorphism).ppt
smartashammari
Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....
Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....
Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....
elucidata1
About Us What is Data Protection Data Protection Consultancy.pdf
About Us  What is Data Protection  Data Protection Consultancy.pdfAbout Us  What is Data Protection  Data Protection Consultancy.pdf
About Us What is Data Protection Data Protection Consultancy.pdf
Data Protection People
Data Storytelling for Portfolio Leaders - Webinar
Data Storytelling for Portfolio Leaders - WebinarData Storytelling for Portfolio Leaders - Webinar
Data Storytelling for Portfolio Leaders - Webinar
OnePlan Solutions
How Biometric Attendance Systems Reduce Payroll Fraud & Costs?
How Biometric Attendance Systems Reduce Payroll Fraud & Costs?How Biometric Attendance Systems Reduce Payroll Fraud & Costs?
How Biometric Attendance Systems Reduce Payroll Fraud & Costs?
Star Link Communication Pvt Ltd
Web Development Services by Icubetechnolabs.pdf
Web Development Services by Icubetechnolabs.pdfWeb Development Services by Icubetechnolabs.pdf
Web Development Services by Icubetechnolabs.pdf
ICUBETECHNOLABS
Best Solution For Import and Export Contacts from VCF to CSV
Best Solution For Import and Export Contacts from VCF to CSVBest Solution For Import and Export Contacts from VCF to CSV
Best Solution For Import and Export Contacts from VCF to CSV
sung231
The Rise of AI and Machine Learning in Mobile App Development.pdf
The Rise of AI and Machine Learning in Mobile App Development.pdfThe Rise of AI and Machine Learning in Mobile App Development.pdf
The Rise of AI and Machine Learning in Mobile App Development.pdf
Lilly Gracia
Symantec Endpoint Protection Presentation 際際滷
Symantec Endpoint Protection Presentation 際際滷Symantec Endpoint Protection Presentation 際際滷
Symantec Endpoint Protection Presentation 際際滷
VLODI
Chimera Tool 41.26.2101 Crack License Key Free Download
Chimera Tool 41.26.2101 Crack License Key Free DownloadChimera Tool 41.26.2101 Crack License Key Free Download
Chimera Tool 41.26.2101 Crack License Key Free Download
nasirali027m
data warehousing architecture presentation
data warehousing architecture presentationdata warehousing architecture presentation
data warehousing architecture presentation
Bobby Pra A
Disaster Recovery in Azure: Architecture and Best Practices
Disaster Recovery in Azure: Architecture and Best PracticesDisaster Recovery in Azure: Architecture and Best Practices
Disaster Recovery in Azure: Architecture and Best Practices
San sri
SAP ESS : W-35_TimeEntry Detailed Document.pdf
SAP ESS : W-35_TimeEntry Detailed Document.pdfSAP ESS : W-35_TimeEntry Detailed Document.pdf
SAP ESS : W-35_TimeEntry Detailed Document.pdf
sandeepkrm792
The Role of Blockchain in Transparent & Secure Procurement.pptx
The Role of Blockchain in Transparent & Secure Procurement.pptxThe Role of Blockchain in Transparent & Secure Procurement.pptx
The Role of Blockchain in Transparent & Secure Procurement.pptx
asmith539880
VADY: Revolutionizing Business Intelligence with AI-Powered Insights
VADY: Revolutionizing Business Intelligence with AI-Powered InsightsVADY: Revolutionizing Business Intelligence with AI-Powered Insights
VADY: Revolutionizing Business Intelligence with AI-Powered Insights
NewFangledVision
Benefits of flutter development reasons to choose in 2025.pptx
Benefits of flutter development reasons to choose in 2025.pptxBenefits of flutter development reasons to choose in 2025.pptx
Benefits of flutter development reasons to choose in 2025.pptx
seo02siddhiinfosoft
Dijkstras single source path algorthim
Dijkstras   single source path algorthimDijkstras   single source path algorthim
Dijkstras single source path algorthim
Bobby Pra A
AI Invoice Processing: Automating Supplier Invoices with AstuteAP
AI Invoice Processing: Automating Supplier Invoices with AstuteAPAI Invoice Processing: Automating Supplier Invoices with AstuteAP
AI Invoice Processing: Automating Supplier Invoices with AstuteAP
AstuteBusiness
Odoo WooCommerce Connector, Multiple Woocommerce store connection
Odoo WooCommerce Connector,  Multiple Woocommerce store connectionOdoo WooCommerce Connector,  Multiple Woocommerce store connection
Odoo WooCommerce Connector, Multiple Woocommerce store connection
Aagam infotech
Google Cloud Build - Overview and Examples
Google Cloud Build - Overview and ExamplesGoogle Cloud Build - Overview and Examples
Google Cloud Build - Overview and Examples
Evgenii Studitskikh
M251_Meeting 5 (Inheritance and Polymorphism).ppt
M251_Meeting 5 (Inheritance and Polymorphism).pptM251_Meeting 5 (Inheritance and Polymorphism).ppt
M251_Meeting 5 (Inheritance and Polymorphism).ppt
smartashammari
Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....
Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....
Breaking Barriers in the use of Biomedical Data- Multi-modal Data Management....
elucidata1
About Us What is Data Protection Data Protection Consultancy.pdf
About Us  What is Data Protection  Data Protection Consultancy.pdfAbout Us  What is Data Protection  Data Protection Consultancy.pdf
About Us What is Data Protection Data Protection Consultancy.pdf
Data Protection People
Data Storytelling for Portfolio Leaders - Webinar
Data Storytelling for Portfolio Leaders - WebinarData Storytelling for Portfolio Leaders - Webinar
Data Storytelling for Portfolio Leaders - Webinar
OnePlan Solutions
How Biometric Attendance Systems Reduce Payroll Fraud & Costs?
How Biometric Attendance Systems Reduce Payroll Fraud & Costs?How Biometric Attendance Systems Reduce Payroll Fraud & Costs?
How Biometric Attendance Systems Reduce Payroll Fraud & Costs?
Star Link Communication Pvt Ltd
Web Development Services by Icubetechnolabs.pdf
Web Development Services by Icubetechnolabs.pdfWeb Development Services by Icubetechnolabs.pdf
Web Development Services by Icubetechnolabs.pdf
ICUBETECHNOLABS
Best Solution For Import and Export Contacts from VCF to CSV
Best Solution For Import and Export Contacts from VCF to CSVBest Solution For Import and Export Contacts from VCF to CSV
Best Solution For Import and Export Contacts from VCF to CSV
sung231
The Rise of AI and Machine Learning in Mobile App Development.pdf
The Rise of AI and Machine Learning in Mobile App Development.pdfThe Rise of AI and Machine Learning in Mobile App Development.pdf
The Rise of AI and Machine Learning in Mobile App Development.pdf
Lilly Gracia
Symantec Endpoint Protection Presentation 際際滷
Symantec Endpoint Protection Presentation 際際滷Symantec Endpoint Protection Presentation 際際滷
Symantec Endpoint Protection Presentation 際際滷
VLODI

BDD test structure

  • 2. User Story As a [Role] I want [Feature] So that I receive [Value]
  • 3. Scenario: how? Given [State] When [Action] Then [Reaction]
  • 4. Domain Model User 亰舒亠亞亳亳仂于舒仆仆亶 仗仂仍亰仂于舒亠仍 Habit 仗亳于从舒 Message 仂仂弍亠仆亳亠 仂 User 从 User Chat 仄亠仂 仂弍亠仆亳 亟于 User
  • 5. User Story: Send Message As a User I want to send Message to another User who forms the same Habit So that I receive motivation
  • 6. Scenario: Send Message Given User 1 and User 2 have the same Habit When User 1 sends Message to User 2 Then Both Users receive the Message
  • 7. Example public void bothUsersShouldRecieveMessagesFromEachOther () { User sender = new User(); User recipient = new User(); Chat chat = new Chat(sender, recipient); given(sender.hasHabit(Refactoring)); given(recipient.hasHabit(Refactoring)); chat.sendMessage("Aloha!"); then(chat.hasMessage(Aloha!)); }
  • 8. + sendMessage(User who, User whom, String message) + getChat(User, User) Map<Chat> chats (key: username1+username2, val: Chat) ChatManager + sendMessage(User whoSent, String message) + List<Message> getMessages() List<Message> messages Chat + Message(User user, String message) + getUser() + getMessage() User user String message Message String username List<Habit> User String name Habit <<sendMessage>> <<creates>> <<creates>> Chat with 束whom.name損 Message.user: message Message.user: message Message.user: message

Editor's Notes

  • #4: Given [Context | State] When [Event | Action] Then [Outcome | Reaction]
  • #9: 亳仄亠 仄仂亟亠仍亳.