Я использую JUnit 4.7 с использованием MavenКак утверждают UserDefined Исключения в JUNIT4.7
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
</dependency>
У меня есть метод для загрузки файла, и я использую свои собственные UserDefined исключения, как показано ниже
public void uploadFile(String fileName) {
File file = null;
try {
file = new File(DIR + "/" + fileName);
// If the file size exceeds 10 MB raise an exception
if ((file.length()/MB) > 10)
throw new FileSizeExceedLimitException("File size should not exceed 10 MB");
else {
System.out.println("File Uploaded Successfully");
}
} catch (FileSizeExceedLimitException e) {
e.printStackTrace();
}
}
И мои Пользовательские исключения выглядит, как показано ниже
public class FileSizeExceedLimitException extends Exception{
/**
*
*/
private static final long serialVersionUID = 1L;
public FileSizeExceedLimitException(String s){
super(s);
}
}
И мои Тестовые это выглядит, как показано ниже
Метод 1:
DocxOperations operations = null;
@Rule
public final ExpectedException exception = ExpectedException.none();
@Before
public void before() {
operations = new DocxOperations();
}
@Test
public void testUploadFileSize() {
exception.expect(FileSizeExceedLimitException.class);
operations.uploadFile("Bigdata.docx");
}
Способ 2:
@Test(expected = FileFormatException.class)
public void testUploadFile() {
operations.uploadFile("01 Big Data Hadoop Intro V 2.0.docx");
}
Способ 3:
@Test(expected = FileFormatException.class)
public void testUploadFile() throws FileFormatException{
operations.uploadFile("01 Big Data Hadoop Intro V 2.0.docx");
}
Во всех приведенных выше способов я не смог пройти тестовые случаи, и я видел эти решения, но они мне не полезны
Assert Exception, Testing Exception
В моем основном коде, т.е. в
uploadFile
методы я должен использовать толькоtry
,catch
неthrows
спасибо за ответ, но в моем основном коде, то есть в методе 'uploadFile', мне нужно использовать только' try', 'catch' not' throws' –