рд╕реНрдкреЙрдХ рдврд╛рдВрдЪрд╛ рдЬреБрдиреАрдЯ рдкрд░реАрдХреНрд╖рдг рдмрдирд╛рддрд╛ рд╣реИред рдЗрдиреНрд╣реЗрдВ рдЯреЗрд╕реНрдЯрдПрдирдЬреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, org.testng.junit.JUnit4TestMethod рд╡рд░реНрдЧ рдореЗрдВ рдпрд╣ рдХреЛрдб рд╣реИ:
private static Method getMethod(Description desc) {
Class<?> c = desc.getTestClass();
String method = desc.getMethodName();
try {
return c.getMethod(method);
} catch (Throwable t) {
Utils.log("JUnit4TestMethod", 2,
"Method '" + method + "' not found in class '" + c.getName() + "': " + t.getMessage());
return null;
}
}
рдЪреВрдВрдХрд┐ рдкрд╛рд╕ рдХрд┐рдП рдЧрдП рд╡рд┐рд╡рд░рдг рдореЗрдВ рд╕реНрдкреЙрдХ рдЯреЗрд╕реНрдЯ рдХрд╛ рдЯреЗрдХреНрд╕реНрдЯ рд╣реИ (рдХреБрдЫ рдЗрд╕ рддрд░рд╣: "рдпрд╣ рдореЗрд░рд╛ рд╕реНрдкреЙрдХ рдЯреЗрд╕реНрдЯ рд╣реИ") рдФрд░ рд╕реНрдкреЙрдХ рдЯреЗрд╕реНрдЯ рдирд╛рдореЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рд╕рд░рд▓ "c.getMethod (рд╡рд┐рдзрд┐)" рдХреЙрд▓ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рдпрд╣ рддрдп рд╣реИ, рддреЛ рдЯреЗрд╕реНрдЯрдПрдирдЬреА рд╕реНрдкреЙрдХ (рдЬреБрдиреАрдЯ) рдкрд░реАрдХреНрд╖рдг рднреА рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЯреЗрд╕реНрдЯрдПрдирдЬреА рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП Method
рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХреНрдпреЛрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЗрд╕рд╕реЗ рдЬреБрдиреАрдЯ рд░рдирд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг рдврд╛рдВрдЪреЗ рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛрдЧреАред
+1
+1
+1
+1
+1
+1
рдпрд╣ рдЯрд┐рдХрдЯ рдЕрдм 2+ рд╕рд╛рд▓ рдкреБрд░рд╛рдирд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдЕрднреА рднреА рдХрд┐рд╕реА рдХреЛ (рдХрднреА) рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ! рдХреНрдпрд╛ рдкреВрд░рд╛ рдордЬрд╛рдХ рд╣реИред рдЕрдЧрд░ рдХреЛрдИ рднреА рдЯреЗрд╕реНрдЯрдПрдирдЬреА рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдмреЗрд╣рдж рдЦрд░рд╛рдм рд╕рдорд░реНрдерди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣реА рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдЬреБрдиреАрдЯ рдореЗрдВ рд╣реЛрдВ ...
рд╣рдо рдЕрдкрдиреЗ рдЦрд╛рд▓реА рд╕рдордп рдХреЗ рджреМрд░рд╛рди рдкрд░реАрдХреНрд╖рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╣рдордиреЗ рдЕрдиреНрдп рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЦреБрд▓реА рд╣реИ, рдХреНрдпреЛрдВ рди рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рдП? рдкреБрд▓-рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдореЗрдВ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд░рдирд╛ рд╣рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред
рдЕрдВрдд рдореЗрдВ, рдФрд░ рдЬреИрд╕рд╛ рдЖрдкрдиреЗ рдХрд╣рд╛, рдЬреБрдиреАрдЯ рднреА рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ (рдФрд░ рдПрдХ рдЕрдЪреНрдЫреА рдкрд░рд┐рдпреЛрдЬрдирд╛)ред
https://github.com/spockframework/spock/issues/389 рдФрд░ https://github.com/spockframework/spock/issues/385 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд
@ рдмреНрд▓реИрдХрдбрдХ-рдЬреЛ рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реА рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПред
рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ SO thead рдореЗрдВ рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реНрдкрд╖реНрдЯ рд╣реИ, рдФрд░ рдпрджрд┐ рдореИрдВ рдЗрд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдБ рддреЛ рдЖрдк 2 рдкреНрд░рдХрд╛рд░ рдХреЗ рдкрд░реАрдХреНрд╖рдг (spock/junit рдФрд░ testng) рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдлрд┐рд░, рдпрджрд┐ рдЖрдк рдорд╛рд╡реЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ https://groups.google.com/forum/#!topic/spockframework/ -iys4ARQrxk рдФрд░/рдпрд╛ рд░рдирд┐рдВрдЧ рдЯреЗрд╕реНрдЯрдПрдирдЬреА рдФрд░ рдЬреБрдиреАрдЯ
рдореЗрд░реЗ рд╡рд░реНрддрдорд╛рди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЬреВрдирд┐рдЯ рдЬреЛрдбрд╝рдиреЗ рдХреА рд╕рдВрдХрд▓реНрдкрдирд╛рддреНрдордХ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдореБрдЭреЗ рдЕрдЧрд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдХреЗрд╡рд▓ рдЬреВрдирд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд░реЗрдЧреАред
@rumatoest рд╢рд┐рдХрд╛рдпрдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЖрдк рдЕрдкрдирд╛ рдЦрд╛рд▓реА рд╕рдордп рдЗрд╕реЗ рдбреАрдмрдЧ/ @juherr рджреНрд╡рд╛рд░рд╛ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдПрдХ рдЦрд╛рд▓реА рд╕рдордп рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИред
рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдкреЙрдХ (рд╣рдореЗрд╢рд╛ рдирдИ рдЪреАрдЬреЗрдВ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ) рдХреЗ рд╕рдВрдкрд░реНрдХ рдореЗрдВ рд░рд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдореИрдВ рдЕрдЧрд▓реА рдмрд╛рд░ рдЗрд╕ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реВрдВред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
@rumatoest рд╢рд┐рдХрд╛рдпрдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЖрдк рдЕрдкрдирд╛ рдЦрд╛рд▓реА рд╕рдордп рдЗрд╕реЗ рдбреАрдмрдЧ/ @juherr рджреНрд╡рд╛рд░рд╛ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдПрдХ рдЦрд╛рд▓реА рд╕рдордп рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИред
рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдкреЙрдХ (рд╣рдореЗрд╢рд╛ рдирдИ рдЪреАрдЬреЗрдВ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ) рдХреЗ рд╕рдВрдкрд░реНрдХ рдореЗрдВ рд░рд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдореИрдВ рдЕрдЧрд▓реА рдмрд╛рд░ рдЗрд╕ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реВрдВред