Я хочу провести некоторые модульные тесты и несколько функциональных тестов в рабочей системе. Однако у меня есть структура данных, которая в основном состоит из нескольких массивов в объекте (ну его fortran, так что это не реальный объект, но вы получаете идею.) Как будет выглядеть пример для модульного тестирования структуры данных? все примеры, которые я видел до сих пор, возвратили одно значение, которое затем было проверено. как мне это сделать с помощью структуры данных, состоящей из массивов?Тестирование модулей с помощью данных datastructures
Если бы я мог получить пример в funit, это было бы здорово. Вот пример моей структуры данных:
type :: myownobject
integer :: front(300)
integer :: end(300)
integer :: size
end type
subroutine getmesugar(myob, moredata)
type(myownobject), intent(inout) :: myob
integer, intent(in) :: moredata (20)
! do something with myownobject
! perhaps add the data after a sanity check
! using the new data and the object
end subroutine
я знаю его, возможно, простой вопрос, но я действительно только начиная с модульным тестированием. Я читаю «The Art Of Unit Testing» Роя Ошерове.
Ну, конечно, я хочу, чтобы функции, которые работают над моим производным типом данных, подлежали тестированию на единицу. моя подпрограмма работает над производным типом данных. я изменил вопрос, чтобы отразить это. – tarrasch
ОК, теперь я действительно не понимаю ваш вопрос. «Как я могу использовать Funit для написания и выполнения модульных тестов?» ? По этому вопросу я не могу помочь, я пишу модульные тесты в Fortran. –
ОК, это означает, что у вас есть собственный модуль тестирования модулей? все, что я хочу, - это убедиться, что функция в приведенном выше примере работает так, как должна, - что является целью модульного тестирования, поскольку я это понял. однако данные, которые обрабатываются, на самом деле не могут быть описаны простым типом данных, а также не могут быть решены. Таким образом, чтобы проверить это, я должен посмотреть на тип данных до и после вычисления. Мой вопрос просто, как я могу сделать это лучше всего?надлежащий тестовый жгут, такой как funit, был бы замечательным, но у меня пока нет опыта с ним – tarrasch