Форум сайта python.su
Тесты это замечательно, но пока я не представляю как тестить UI
Хотя я вообще не представляю как удобно тестировать код.
Поскольку тесты на то, что понятно как тестить, не интересно тестить.
А то, что нужно тестировать, я не представляю как тестировать от слова совсем.
И что-бы не быть голословным.
Как протестировать функцию setImage
def setImage(self):
fileName, _ = QtWidgets.QFileDialog.getOpenFileName(None, "Select image", "", "Image files (*.png *.jpg, *.jpeg, *.bmp)")
if fileName:
bitmap = QtGui.QPixmap(fileName)
bitmap = bitmap.scaled(self.lblImage.width(), self.lblImage.height(), QtCore.Qt.keepAspectRatio)
self.lblImage.setPixmap(bitmap)
self.lblImage.setAlignment(QtCore.Qt.AlignCenter)
Офлайн
> Емасs сам предложит список параметров, методов, констант - среди которых будет KeepAspectRatio?
Python это динамический язык с динамической типизацией. По этому корректное автодополнение тебе ни одна IDE не предложит.
> Я правильно понимаю, перед запуском скрипта он ВЕСЬ будет автоматически проверен на корректность…
Для этого есть утилиты статического анализа кода, например https://pypi.org/project/pyflakes/ но и они не панацея.
Офлайн
softlandНадо это окно диалога QtWidgets.QFileDialog.getOpenFileName() заменить на мок-объект и вернуть из него типа картинку. Тогда не надо будет выбирать ничего руками, тесты как будто выберут картинку через псевдо-диалог.
как ошибку в “Qt.keepAspectRatio” можно обнаружить НЕ “руками”, не покликав в диалоге выбора файла
Офлайн