小编Mic*_*ael的帖子

测试数据密集型遗留应用程序的提示

我正在研究一个非常大的数据密集型遗留应用程序.代码库和数据库都是大规模的.大量的业务逻辑遍布所有层,包括存储过程.

是否有人建议如何开始将"单元"测试(技术上的集成测试,因为他们需要跨几层测试几乎任何给定过程的单个方面)以有效的方式应用到应用程序中?当前的架构不容易支持任何类型的注入或模拟.正在编写新代码以便于测试,但遗留代码呢?由于数据库本身和业务逻辑的强烈依赖性,我目前正在使用内联sql来查找用于测试的数据,但这些都非常耗时.创建视图和/或存储过程是不够的.

您采取了哪些方法(如果适用)?什么有用?什么没有&为什么?任何建议,将不胜感激.谢谢.

legacy unit-testing

9
推荐指数
1
解决办法
1809
查看次数

如何使用Powershell在IIS中设置"ConnectAs"用户

我在IIS中嵌套Web应用程序的"ConnectAs"域用户帐户编写脚本时遇到问题.我的目标环境是带有IIS 8的MS Server 2012 R2,但是,我在IIS 7上看到了与Windows 7相同的问题.

例如,假设我有"默认网站".在那之下,我有"MainApplication".在那之下,我有另一个"SubApplication"的Web应用程序.

我已尝试在其他类似于以下网站上找到的建议取得了部分成功:前两个语句有效.

Set-WebConfigurationProperty "system.applicationHost/sites/site[@name='Default Web Site']/application[@path='/MainApplication']/virtualDirectory[@path='/']" -name "username" -value "mydomain\user" 
Set-WebConfigurationProperty "system.applicationHost/sites/site[@name='Default Web Site']/application[@path='/MainApplication']/virtualDirectory[@path='/']" -name "password" -value "mypassword"
Run Code Online (Sandbox Code Playgroud)

我似乎无法获得接下来两个语句的语法:

Set-WebConfigurationProperty "system.applicationHost/sites/site[@name='Default Web Site']/application[@path='/MainApplication/SubApplication']/virtualDirectory[@path='/']" -name "username" -value "mydomain\user" 
Set-WebConfigurationProperty "system.applicationHost/sites/site[@name='Default Web Site']/application[@path='/MainApplication/SubApplication']/virtualDirectory[@path='/']" -name "password" -value "mypassword"
Run Code Online (Sandbox Code Playgroud)

在一个完美的世界中,我将能够执行类似于下面的操作,以快速使所有Web应用程序在相同的域用户帐户下运行:

Get-WebApplication | ForEach-Object { $_ | Set-ItemProperty -Name "username" -Value "domain\user" }
Get-WebApplication | ForEach-Object { $_ | Set-ItemProperty -Name "password" -Value "passwordValue" } 
Run Code Online (Sandbox Code Playgroud)

或类似的东西:

Get-WebApplication | ForEach-Object { $_.ChildElements | Select-Object -First 1 | Get-Member -Name …
Run Code Online (Sandbox Code Playgroud)

iis permissions powershell

5
推荐指数
1
解决办法
3209
查看次数

以编程方式在VB.NET中添加事件处理程序(如果它不存在)

我正在尝试为ASP.NET网页中的几个控件使用单个事件处理程序.我想在运行时添加事件处理程序,当且仅当它不存在时.在C#中,我会写如下:

if (myTextBox.OnTextChanged == null)
{
    myTextBox.OnTextChanged += DoTextChangingValidation;
}
Run Code Online (Sandbox Code Playgroud)

同样,我知道我可以删除事件处理程序,如下所示:

if (myTextBox.OnTextChanged != null)
{
    myTextBox.OnTextChanged -= DoTextChangingValidation;
}
Run Code Online (Sandbox Code Playgroud)

我知道如何在Visual Basic中添加和删除事件处理程序...但是如何确定如何检查它是否已经分配?

vb.net events

4
推荐指数
1
解决办法
1万
查看次数

使用属性进行方法分析

是否可以通过.NET中的属性分析各个方法?

我目前正在尝试在大量遗留应用程序中找到一些瓶颈,这些应用程序大量使用静态方法.目前,集成框架根本不是一种选择.由于大多数调用都使用静态方法,因此接口和依赖注入不可用.攻击代码以记录诊断也不是一个可行的解决方案.

我知道市场上有一些分析工具,但它们目前不在预算范围内.理想情况下,我将能够创建自己的自定义属性,该属性将记录有关方法输入和方法退出的一些基本信息.我从来没有真正使用自定义属性,所以任何洞察甚至是否可能这将是值得赞赏的.

如果可能的话,我想通过配置文件启用分析.这将通过单元和集成测试支持分析.

.net profiling custom-attributes

3
推荐指数
1
解决办法
3878
查看次数