【发布时间】:2009-10-29 13:47:15
【问题描述】:
我正在接管一个包含控制台应用项目的遗留系统,该项目在我们的生产服务器上作为计划任务运行。主要制作日报和周报,做一些数据库维护等。
控制台应用程序的“main”处理输入命令行参数并确定要执行几个不同进程中的哪一个。类似的东西
模块主模块
Public Sub Main()
'--- Check if command line arguments were specified
Dim args() As String = Environment.GetCommandLineArgs()
If args.Length > 1 Then
ConsoleMain(args)
End If
End Sub
Public Sub ConsoleMain(ByVal args() As String)
Dim rc As New Coordinator(enableEmails_)
Try
Dim arg_ As String = args(1)
Dim success_ As Boolean = True
Select Case arg_.ToUpper()
Case TaskType.OrderIntegration
success_ = rc.OrderIntegration()
Case TaskType.Motivators
success_ = rc.MotivatorsCreateFile(New CustomerMotivatorsManager)
... repeat for each of the various "Task Types"
结束模块
我的问题是: - 这是一个带有 Main() 和 ConsoleMain() 的控制台应用程序,我似乎没有可以从测试中访问的任何内容 - 即“Main”和“ConsoleMain”似乎无法访问。我怎样才能对这样的东西进行单元测试,以测试“如果参数'x'被传递,函数'y'被调用”?
提前致谢,
【问题讨论】:
标签: unit-testing scheduled-tasks