问题列表 - 第25619页

使用Rails进行测试驱动开发(TDD)

我正在寻找特定于Rails的TDD资源.

我已经看过Rails指南:创建Rails插件的基础知识,这真的激发了我对该主题的兴趣.

我有一本Agile Development with Rails书,我看到那里有一些与测试相关的信息.但是,似乎作者会引导您完成构建应用程序的步骤,然后再添加测试.这不是真正的测试驱动开发.

理想情况下,我想要一本关于此的书,但如果不存在这样的书,那么其他教程或文章的集合会很棒.

我想学的东西:

  • 主要目标:最佳实践
  • 单元测试
  • 如何利用灯具
    • 可能使用现有的开发数据代替灯具
      • 什么是社区标准?
  • 编写插件测试
  • 使用会话数据进行测试
    • 用户已登录
    • 用户可以访问URL/foo/bar
  • 测试数据的变化
    • 作者更新发布
    • 产品状态更改为延期订单
    • 用户购买产品(行为?)
      • 用户已登录
      • 用户有有效的地址和有效的信用卡
      • 订单记录
      • 信用卡交易记录已更新
      • 发送电子邮件给用户
  • 测试发送电子邮件的成功
  • 测试AJAX
    • 可能测试一般的jQuery功能(界面元素等)
  • RSpec的
    • RSpec在Rails应用程序中的位置
  • 测试的未来
    • 测试在哪里?他们出路的是什么东西?
    • Rails 3中将使用哪些模式?

谢谢你的帮助!

tdd unit-testing ruby-on-rails

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

用于类似GUI的终端导航(vim/lynx风格)的食谱/教程/库?

一些基于控制台的应用程序(如vim或lynx)提供了丰富的用户界面,使用户可以在控制台周围自由导航,直接在屏幕上操作数据,访问菜单等等,类似于"现代"gui应用程序.如何在使用C++的Unix/Linux上实现这一目标?你是直接操纵某种字符缓冲区还是屏幕不断被清除并重新打印到stdout?是否有一组库来实现这种行为,甚至还有一些用于控制台的"现代"事件驱动的GUI工具包?

c++ navigation terminal console

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

当dns或netbios不可用时,如何通过网络模拟用户的文件副本

可能重复:
在C#中访问Windows中受密码保护的网络驱动器?

我在DomainA上运行ComputerA作为userA需要将一个非常大的文件复制到WorkgroupB上的ComputerB,其中ip为192.168.10.2到只有userB具有写访问权限的Windows共享.

没有netbios或dns解析因此必须通过IP来修复计算机

我先试试

AppDomain.CurrentDomain.SetPrincipalPolicy(System.Security.Principal.PrincipalPolicy.WindowsPrincipal);
WindowsIdentity UserB = new WindowsIdentity("192.168.10.2\\UserB", "PasswordB"); //Execption
WindowsImpersonationContext contex = UserB.Impersonate()
File.Copy(@"d:\bigfile", @"\\192.168.10.2\bifgile");
contex.Undo();
Run Code Online (Sandbox Code Playgroud)

但我得到一个System.Security.SecurityException"提供的名称不是一个正确形成的帐户名称."

所以我试过了

AppDomain.CurrentDomain.SetPrincipalPolicy(System.Security.Principal.PrincipalPolicy.WindowsPrincipal);
WindowsIdentity webinfinty = new WindowsIdentity("ComputerB\\UserB", "PasswordB"); //Execption
Run Code Online (Sandbox Code Playgroud)

但我得到"登录失败:未知的用户名或密码错误." 而是错误.

所以我试过

IntPtr token;
bool succeded = LogonUser("UserB", "192.168.10.2", "PasswordB", LogonTypes.Network, LogonProviders.Default, out token);
if (!succeded)
{
     throw new Win32Exception(Marshal.GetLastWin32Error());
}
WindowsImpersonationContext contex = WindowsIdentity.Impersonate(token);
(...)
[DllImport("advapi32.dll", SetLastError = true)]
static extern bool LogonUser(
      string principal,
      string authority,
      string password,
      LogonTypes logonType,
      LogonProviders logonProvider,
      out IntPtr token); …
Run Code Online (Sandbox Code Playgroud)

c# impersonation

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

如何使用Eclipse在.JAR文件中包含特定于平台的本机库?

我刚刚开始学习JNI.我一直在关注一个简​​单的例子,我创建了一个Java应用程序,它在本机库中调用Hello World方法.我想针对Win32和Linux x86.

我的库驻留在DLL中,当DLL被添加到Eclipse项目的根目录时,我可以使用LoadLibrary调用它.
但是,我无法弄清楚如何让Eclipse导出包含DLL和Linux的.SO文件的可运行JAR.

所以我的问题基本上是; 您将如何在Eclipse中创建项目并包含同一本机库的多个版本?

谢谢你,
马丁

java linux windows java-native-interface cross-platform

6
推荐指数
1
解决办法
9997
查看次数

如何在AS3中播放图书馆的声音?

在Flash 10/AS3中,我添加了一些声音,似乎工作正常,但我认为我做错了.我将声音导入到库中,但我相信它正在使用swf/sound从文件夹重新加载它.我正在加载它们:

var request1:URLRequest = new URLRequest("CLICK8C.mp3");
clickSound = new Sound();
clickSound.addEventListener(Event.COMPLETE, completeHandler);
clickSound.load(request1);
Run Code Online (Sandbox Code Playgroud)

有没有办法让它从库中加载它?

flash audio actionscript-3

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

c编程中的*和&运算​​符有什么区别?

我只是确保我正确理解这个概念.使用*运算符,我创建一个新变量,在内存中分配一个位置.为了不必要地复制变量及其值,&运算符用于将值传递给方法等,它实际上指向变量的原始实例,而不是制作新副本......是吗?这显然是一种浅薄的理解,但我只是想确保我不会让他们混淆.谢谢!

c operators

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

获取字体列表(Win32)

我想制作一个组合框,其中包含所有计算机安装的字体.我不确定这是怎么做的.我是否需要访问注册表才能获得此信息?谢谢

c++ winapi fonts

6
推荐指数
2
解决办法
7679
查看次数

快速迭代python中可迭代(不是列表)的前n项

我正在寻找一种迭代迭代迭代的第一n项的pythonic方法(upd:在常见情况下不是列表,因为列表事情是微不足道的),并且尽可能快地执行此操作非常重要.这是我现在这样做的方式:

count = 0
for item in iterable:
 do_something(item)
 count += 1
 if count >= n: break
Run Code Online (Sandbox Code Playgroud)

对我来说似乎并不整洁.另一种方法是:

for item in itertools.islice(iterable, n):
    do_something(item)
Run Code Online (Sandbox Code Playgroud)

这看起来不错,问题是它是否足够快与一些发电机一起使用?例如:

pair_generator = lambda iterable: itertools.izip(*[iter(iterable)]*2)
for item in itertools.islice(pair_generator(iterable), n):
 so_something(item)
Run Code Online (Sandbox Code Playgroud)

与第一种方法相比,它运行得足够快吗?有没有更简单的方法呢?

python performance iterator generator

12
推荐指数
2
解决办法
5855
查看次数

通过Hudson构建Android应用程序 - 鸡和鸡蛋问题

使用Android生成的ant构建文件时,该文件通过"android update project -p."生成的local.properties文件中的sdk.dir属性引用SDK安装.

build.xml中的注释表明不应将local.properties检入版本控制.

但是,当你从Hudson运行你的构建时,它会从版本控制中重新检查你的代码,因此local.properties不存在,随后构建失败而没有设置sdk.dir.所以它的鸡和鸡蛋问题.作为一种解决方法,我现在已将local.properties检查为版本控制(没有其他人会使用它)但我很好奇其他开发人员如何解决这个问题?

ant android properties build local

4
推荐指数
2
解决办法
1463
查看次数

Ruby on Rails:我可以使用"link_to"来调用创建操作吗?

如何从link_to正确调用create动作?我正在使用REST(map.resources:recipes).这是创建动作:

def create
  recipe = Recipe.create(:name => "French fries")
  redirect_to recipe
end
Run Code Online (Sandbox Code Playgroud)

例如,我认为这样的事情可能有效:

<%= link_to "Create a default recipe", recipe_path, :method => :post %>
Run Code Online (Sandbox Code Playgroud)

我不确定这是否是推荐的(甚至是正确的)方式.任何的想法?

ruby ruby-on-rails

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