VS2012 Visual Basic.NET アプリケーションがあり、このアプリケーションの単体テストを作成したいと考えています。
私のアプリケーションには、次の構造を含むモジュールがあります。
<Serializable()> Public Structure MediaItem
Dim longMediaID As Long
Dim MediaObject As WMPLib.IWMPMedia
Dim FileInfoObject As FileInfo
Dim stringGenre As String
Dim stringMediaDuration As String
Dim doubleMediaLength As Double
End Structure
この構造を使用して単体テストを実行できるように、上記の MediaItem 構造を「インポート」するにはどうすればよいですか? 現在、TestClass はこの構造を「見る」ことができません。
アップデート
この構造は、私が特注で作ったものです。実際にはクラス内ではなく、モジュール内にあります。
更新 2
モジュールコードは次のとおりです。
Imports System.IO
Namespace modCanMediaStructures
Module modCanMediaStructures
<Serializable()> Public Structure MediaItem
Dim longMediaID As Long
Dim MediaObject As WMPLib.IWMPMedia
Dim FileInfoObject As FileInfo
Dim stringGenre As String
Dim stringMediaDuration As String
Dim doubleMediaLength As Double
End Structure
<Serializable()> Public Structure MediaPlayList
Dim stringMediaPlayListName As String
Dim stringMediaPlayListDescription As String
Dim stringMediaPlayListComments As String
Dim mediaItemList As List(Of MediaItem)
Dim stringPlayListDuration As String
Dim doublePlayListDuration As Double
Dim booleanShuffle As Boolean
Dim booleanLoop As Boolean
End Structure
Public Structure genreItem
Dim stringGenreName As String
Dim longGenreCount As Long
Dim doubleGenreDuration As Double
End Structure
<Serializable()> Public Structure ScheduleItem
Dim stringItemName As String
Dim stringItemPlaylist As String
Dim stringItemDuration As String
Dim stringItemComments As String
Dim doubleItemDuration As Double
Dim booleanStartDateIsDerivedFromEndOfOtherScheduleItem As Boolean
Dim stringScheduleItemThatStartDateIsDerivedFrom As String
Dim dateItemStartDateTime As Date
Dim dateItemEndDateTime As Date
Dim booleanEndDateIsDerivedFromPlayListDuration As Boolean
End Structure
End Module
End Namespace
私のメイン フォームでは、次のように変数を宣言します。
Dim testMediaItem As modCanMediaStructures.MediaItem
次のステートメントをインポートした後:
Imports modCanMediaStructures
これは機能します。ただし、UnitTest テストで同じステートメントを実行すると、次のエラーが発生します。
タイプ「modCanMediaStructures.MediaItem」が定義されていません
これが私のコードです:
Imports System.Text
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports CanMediaPlayer
Imports modCanMediaStructures
<TestClass()> Public Class MediaListTests
<TestMethod()> Public Sub TestaddMediaItemToList()
Dim myStructure As New modCanMediaStructures.MediaItem
End Sub
End Class
UnitTest プロジェクトが他のソリューション ファイルのコードを実際に「見る」ことができないため、これが起こっていると思います。
これを機能させるために何か助けてもらえますか?