При выполнении тестов может возникнуть такая неприятная ситуация, тест как будто бы провален, но нет ясности о причинах провала теста.
В такой ситуации нам бы очень помогла запись того как исполнялся тест.
Слава богу есть такая возможность )))))
Нам следует обратиться вот к этому проекту.
Собственно весь проект нам не нужен. Скачиваем файлы screen-recorder-r2.2.jar и screen-player-r2.2.jar.
Добавляем их в build path нашего проекта с тестами.
Создаем в проекте класс Recorder.
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import org.one.stone.soup.screen.recorder.DesktopScreenRecorder;
import org.one.stone.soup.screen.recorder.ScreenRecorder;
import org.one.stone.soup.screen.recorder.ScreenRecorderListener;
public class Recorder implements ScreenRecorderListener {
private ScreenRecorder recorder;
public void start(String filename) throws FileNotFoundException {
FileOutputStream oStream = new FileOutputStream(filename);
recorder = new DesktopScreenRecorder(oStream, this);
recorder.startRecording();
}
public void stop() {
recorder.stopRecording();
}
public void frameRecorded(boolean fullFrame) throws IOException {
}
public void recordingStopped() {
}
}
Данный класс при вызове метода start() будет записывать все что происходит на рабочем столе, до момента пока мы не вызовем stop().
Все это очень хорошо укладывается в тесты при использовании TestNG и его методов @AfterMethod и @BeforeMethod
После того как тест прошел и файл с записью создан мы можем проиграть его с помощью проигрывателя
java- -jar screen-player.jar (file-name)
В такой ситуации нам бы очень помогла запись того как исполнялся тест.
Слава богу есть такая возможность )))))
Нам следует обратиться вот к этому проекту.
Собственно весь проект нам не нужен. Скачиваем файлы screen-recorder-r2.2.jar и screen-player-r2.2.jar.
Добавляем их в build path нашего проекта с тестами.
Создаем в проекте класс Recorder.
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import org.one.stone.soup.screen.recorder.DesktopScreenRecorder;
import org.one.stone.soup.screen.recorder.ScreenRecorder;
import org.one.stone.soup.screen.recorder.ScreenRecorderListener;
public class Recorder implements ScreenRecorderListener {
private ScreenRecorder recorder;
public void start(String filename) throws FileNotFoundException {
FileOutputStream oStream = new FileOutputStream(filename);
recorder = new DesktopScreenRecorder(oStream, this);
recorder.startRecording();
}
public void stop() {
recorder.stopRecording();
}
public void frameRecorded(boolean fullFrame) throws IOException {
}
public void recordingStopped() {
}
}
Данный класс при вызове метода start() будет записывать все что происходит на рабочем столе, до момента пока мы не вызовем stop().
Все это очень хорошо укладывается в тесты при использовании TestNG и его методов @AfterMethod и @BeforeMethod
После того как тест прошел и файл с записью создан мы можем проиграть его с помощью проигрывателя
java- -jar screen-player.jar (file-name)