Я только что подумал об этом, который, я думаю, гораздо проще выполняет ту же задачу. Метод valueChanged (ListSelectionEvent e) автоматически запускается, когда делается выбор в списке. Имея это в виду, я смогу проверить действие выбранного "a", используя метод setSelectedIndex (index). valueChanged (...) обнаружит изменение, сделанное из вызова: list.setSelectedIndex (...)
public class GUI implements ListSelectionListener{
String[] letters = {"a", "b", "c"};
JList list = new JList(letters);
list.addListSelectionListener(this);
public void valueChanged(ListSelectionEvent e){
if(list.getSelectedValue().equals("a")){
System.out.println("Success");
}else{
System.out.println("Fail");
}
}
}
затем из моего тестового класса
public class GUITest{
@test
void testListSelection(){
GUI t = new GUI();
t.list.setSelectedIndex(0);
assert(whatever test your doing);
}
}
Оператор if для «a» как выбранное значение было охвачено во время теста JUnit.