рдбреЗрдЯрд╛рдмреЗрдиреЗрдиреЗрд░ - рдЯреЗрд╕реНрдЯ рдбреЗрдЯрд╛ рдЬреЗрдирд░реЗрд╢рди

рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рд░


рдЕрдм рдпреВрдирд┐рдЯ рдФрд░ рд▓реЛрдб рдкрд░реАрдХреНрд╖рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рд╛рдордЧреНрд░реА рд╣реИред рд╕рднреА рдЪреБрдирд╛рд╡ рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рд╡реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЯреАрдбреАрдбреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЛрдб рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬреЗрдореАрдЯрд░ / рдПрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдкрд░реАрдХреНрд╖рдг рдбреЗрдЯрд╛ рд╕реЗ рдмрд╣реБрдд рдирд┐рдХрдЯрддрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЙрддреНрдкрдиреНрди / рд▓рд┐рдЦреЗ рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рддреАрд╡реНрд░ рдирд╣реАрдВ рд╣реИ - рдереНрд░рдХреНрд╕ рдореЙрдХ, рдЗрд╕рдХрд╛ рдкреАрдЫрд╛ рдХрд┐рдпрд╛ рдФрд░ рднреВрд▓ рдЧрдпрд╛ред рд▓реЗрдХрд┐рди рд▓реЛрдб рдкрд░реАрдХреНрд╖рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдореБрдЭреЗ 1-2-5-10 рдСрдмреНрдЬреЗрдХреНрдЯ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд▓рд╛рдЦреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ?

рдЫрд╡рд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ (php) рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЬреЛ рдореБрдЭреЗ рдорд┐рд▓реЗ рдЬрдм рдЙрдирдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рддрдирд╛рд╡ рдХреЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рд╕реЗ рдХрдИ рдЬреБрдбрд╝рдирд╛рд░ рдмрдирд╛рдПрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ ( ab / jmeter ) рдмрд▓ рджреЗрдВред рдкрд░реАрдХреНрд╖рд╛ рдкрд░рд┐рдгрд╛рдо рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВред рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбреЗрдЯрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрддрд╛ рд╣реИ, рдЗрд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЫреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдЦреЗрд▓рддрд╛ рд╣реИред рдпрд╣ рд╕рд░рд╛рд╣рдиреАрдп рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдмрд╣реБрдд рдХрдо рд╣реИрдВ, рдФрд░ рд╡рд┐рдзрд┐ рдЦреБрдж рдореЗрд░реЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд▓рдЧрддреА рд╣реИ - рдПрдХ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╕реНрдерд┐рд░рддрд╛ рдЬрдирд░реЗрдЯрд░ рдХреЗ рдмрдХрд╡рд╛рд╕-рдХреЛрдб рдХреЛ рдирд╣реАрдВ рд╕рдордЭ рд╕рдХрддрд╛ рд╣реИ (рдЖрдЦрд┐рд░рдХрд╛рд░, рдирд┐рд░реНрдорд╛рддрд╛ рдиреЗ рдЗрд╕реЗ рдЬрд▓реНрджреА рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛рд╡рд╛рджреА рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рд╣реИ рдФрд░ рдЬрд▓реНрдж рд╣реА рдпрд╛ рдмрд╛рдж рдореЗрдВ рд╣рд░ рдХреЛрдИ рдпрд╛ рддреЛ рдкрд╣рд▓рд╛ рд░рд╛рд╕реНрддрд╛ рддрдп рдХрд░реЗрдЧрд╛ рдпрд╛ рдПрдХ рдирдпрд╛ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛ред generilkuред

рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдЬреБрдбрд╝рдирд╛рд░ рдХрд╛ рдореВрд▓реНрдп рдЕрдм рдХрдо рдЖрдВрдХрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рдо рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХреЗ рдХрд╛рд░рдг рдЗрд╕ рдкрд░ рдХрдИ рдмрд╕ рд╣рдереМрдбрд╝рд╛ (рдХрд▓реНрдкрдирд╛ 15-25 рд╕рдВрдмрдВрдзрд┐рдд рддрд╛рд▓рд┐рдХрд╛рдУрдВ, рдПрдХ рд╕реНрдерд┐рд░рддрд╛ рдкреАрдврд╝реА рдХреА рдкрдЯрдХрдерд╛ рд▓рд┐рдЦрдирд╛ рдмрд╣реБрдд рд╣реА рдЕрд╣рдо, рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛)ред рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЬрдм рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдИ, рддреЛ рдореИрдВрдиреЗ рджреАрд╡рд╛рд░ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЕрдкрдиреЗ рд╕рд┐рд░ рдХреЛ рдЯрдХреНрдХрд░ рдирд╣реАрдВ рджреЗрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╕рдВрдмрдВрдзрд┐рдд рдбреЗрдЯрд╛ рдХреА рд╕рд╛рдорд╛рдиреНрдп рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдПред

рдореИрдВ рдмрд╣реБрдд рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдерд╛, рд▓реЗрдХрд┐рди рдХреБрдЫ рднреА рд╕рдордЭрджрд╛рд░ рдирд╣реАрдВ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдореБрдЭреЗ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдпрд╣ рд╕рд╡рд╛рд▓ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рднреА рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рдерд╛ рдФрд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рдкреВрд░реЗ рдЬреАрд╡рди рдореЗрдВ рд╕рд╛рдЗрдХрд┐рд▓ рдХреЗ рдЭреБрдВрдб рдХреЗ рд╕рд╛рде рдХреБрдЯрд┐рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдлрд┐рд░ рднреА, рдПрдХ рдЙрдкрдпреБрдХреНрдд рдЙрдкрдХрд░рдг рдорд┐рд▓рд╛, рд╣рдордиреЗ рдЗрд╕реЗ рдХрд╛рдо рдореЗрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЕрдм рдореИрдВ рдЗрд╕реЗ рдЖрдкрдХреЗ рд╕рд╛рдордиреЗ рдкреЗрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

Databene Benerator - FTW!


рдЬреЗрдирд░реЗрдЯрд░ (рд╣рд╛рдБ, рдПрдХ рдордЬрд╝реЗрджрд╛рд░ рдирд╛рдо) 2 рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ: рдбреЗрдЯрд╛ рдЬрдирд░реЗрд╢рди рдФрд░ рдПрдиреЛрдорд┐рдиреЗрд╢рдиред рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рдЗрд╕ рд▓реЗрдЦ рдХреЗ рджрд╛рдпрд░реЗ рд╕реЗ рдкрд░реЗ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рднреА рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд╣реА рдФрд░ рдЙрдкрдпреЛрдЧреА рдЪреАрдЬ рд╣реИ (рдЙрддреНрдкрд╛рджрди рд╕реЗ рдбрдВрдк рдХрд╛ рд╕рдВрд╢реЛрдзрди, рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдбреЗрдЯрд╛ рдФрд░ рдЙрдирдХреЗ рдХреНрд░реЗрдбрд┐рдЯ рдХрд╛рд░реНрдб рдирдВрдмрд░ рдореЗрдВ рдХрдЯреМрддреА рд╣реЛ рд╕рдХреЗ)ред
рддреБрд▓рд╕рд╛ рдПрдХ XML рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдкрдиреЗ CSV / XML рдмрдирд╛рдиреЗ рдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕реАрдзреЗ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдерд╛ред рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╣рд░ рдЬрдЧрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ:


рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬрдирд░реЗрдЯ рдЯреИрдЧ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдпрд╣ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХреМрди рд╕реА рдЗрдХрд╛рдЗрдпрд╛рдБ рдмрдирд╛рдПрдБрдЧреЗ рдФрд░ рдХрд┐рд╕ рддрд░реАрдХреЗ рд╕реЗред рдпрд╣ рд╕рд░рд▓ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╛рд░реАрдХрд┐рдпрд╛рдВ рд╣реИрдВред

рдпрд╣ рдПрдХ рд╕рдореАрдХреНрд╖рд╛ рд▓реЗрдЦ рд╣реИ, рдореИрдВ рдЗрд╕ рдЯреВрд▓ рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдореИрдВ рд╕рднреА рдорд▓реНрдЯреА-рдкреЗрдЬ рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдирд╣реАрдВ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдореЗрд░рд╛ рдХрд╛рдо рд╢рд╛рд╕реНрддреНрд░реАрдп рдорд╛рдорд▓реЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рджрд┐рдЦрд╛рдирд╛ рд╣реИ рдФрд░, рдЗрд╕рдХреЗ рд▓рд┐рдП, рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рд░реБрдЪрд┐ рд░рдЦрдирд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЕрдм рдореИрдВ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ рдореЗрдВ рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рд▓реЗрдХрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рддрдХ рдЪрд░рдгрдмрджреНрдз рддрд░реАрдХреЗ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреЛрд╕реНрдЯрдЧреНрд░реИрдЬ рд╕реНрдерд╛рдкрд┐рдд рд╣реИрдВ :)

рдкреИрдХрд┐рдВрдЧ / рд╕реНрдерд╛рдкрдирд╛


рдЙрддреНрдкрд╛рдж рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВ рдФрд░ рдЕрдВрдд рдореЗрдВ ~ / .bash_profile рдЬреЛрдбрд╝реЗрдВ:
export BENERATOR_HOME=/path/to/unpacked/benerator
export PATH=$PATH:$BENERATOR_HOME/bin

рд╣рдо рдмрд╛рд╣рд░ рд▓реЗ:
chmod a+x $BENERATOR_HOME/bin/*.sh

рдкрд╣рд▓рд╛ рдкрд░рд┐рджреГрд╢реНрдп


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдирд┐рд░реНрдорд╛рдгреЛрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рд╣реЛрдЧрд╛, рдпрд╣ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред рдЖрдЗрдП рдХрдИ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде 5 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдПрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХрдВрд╕реЛрд▓ рджреЗрдВред

рдПрдХ рдордирдорд╛рдирд╛ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдБ, рдЗрд╕рдореЗрдВ рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде benerator.xml рдХреЛ рд╕рд╣реЗрдЬреЗрдВ:
benerator.xml
 <?xml version="1.0" encoding="UTF-8"?> <setup xmlns="http://databene.org/benerator/0.7.6" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://databene.org/benerator/0.7.6 benerator-0.7.6.xsd" defaultEncoding="UTF-8" defaultDataset="US" defaultLocale="us" defaultLineSeparator="\n"> <bean id="dtGen" class="DateTimeGenerator"> <property name='minDate' value='2013-01-01'/> <property name='maxDate' value='2013-01-31'/> <property name='dateGranularity' value='00-00-02' /> <property name='dateDistribution' value='random' /> <property name='minTime' value='08:00:00' /> <property name='maxTime' value='17:00:00' /> <property name='timeGranularity' value='00:00:01' /> <property name='timeDistribution' value='random' /> </bean> <import domains="person"/> <generate type="user" count="5" consumer="ConsoleExporter"> <variable name="person" generator="PersonGenerator"/> <attribute name="first_name" script="person.givenName"/> <attribute name="last_name" script="person.familyName"/> <attribute name="birthdate" script="person.birthDate"/> <attribute name="email" script="person.email"/> <attribute name="gender" script="person.gender" map="'MALE'->'true','FEMALE'->'false'"/> <attribute name="created_at" type="timestamp" generator="dtGen"/> </generate> </setup> 


рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ benerator.sh ./benerator.xml рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЖрдкрдХреЛ рдХрдВрд╕реЛрд▓ рдХреЛ рдкреНрд░рд╛рдкреНрдд рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрдм, рдЪрд▓реЛ benerator.xml рдХрд╛ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдЕрдзреНрдпрдпрди рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рд╣реБрдЖред

Source: https://habr.com/ru/post/In169713/


All Articles