问题列表 - 第25291页

如何(单元)测试数据密集型PL/SQL应用程序

我们的团队愿意对在扩展现有庞大Oracle系统的正在运行的项目下编写的新代码进行单元测试.

该系统仅由PL/SQL编写,由数千个表,数百个存储过程包组成,主要从表中获取数据和/或插入/更新其他数据.

我们的延期也不例外.大多数函数从非常复杂的SELECT语句返回数据,通过许多相互绑定的表(在返回它们之前添加一些逻辑)或者从一个复杂的数据结构转换到另一个(以另一种方式复杂化).

对这些代码进行单元测试的最佳方法是什么?

现有代码库没有单元测试.更糟糕的是,只有包,触发器和视图是源控制的,表结构(包括"alter table"内容和必要的数据转换是通过除版本控制之外的通道部署的).在我们的项目范围内无法改变这一点.

维护测试数据似乎是不可能的,因为每周都有新的代码部署到生产环境中,通常没有事先通知,经常改变数据结构(在这里添加一列,在那里删除一个).

我很高兴有任何建议或参考来帮助我们.一些团队成员往往厌倦了弄清楚如何开始我们的经验,单元测试不包括PL/SQL数据密集型遗留系统(只有那些"来自本书"的绿地Java项目).

oracle legacy tdd unit-testing plsql

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

根据S_ISREG C/C++,它是什么意思"常规文件"?

让我们考虑以下3个代码行:

struct stat buffer;       
status = lstat(file.c_str(), &buffer);  
bool Flag = S_ISREG(buffer.st_mode)
Run Code Online (Sandbox Code Playgroud)

当S_ISREG()返回时,true它告诉您该文件是常规文件

常规意味着什么?

谢谢

c c++ unix file

7
推荐指数
2
解决办法
9459
查看次数

用JAXB将元素表示为布尔值?

我们有这个XML:

  <Summary>
     <ValueA>xxx</ValueA>
     <ValueB/>
  </Summary>
Run Code Online (Sandbox Code Playgroud)

<ValueB/>永远不会有任何属性或内在元素.它是一个布尔类型元素 - 它存在(true)或不存在(false).

JAXB使用String valueA成员生成了一个Summary类,这很好.但是对于ValueB,JAXB生成了一个ValueB内部类和一个相应的成员:

@XmlElement(name = "ValueB")
protected Summary.ValueB valueB;
Run Code Online (Sandbox Code Playgroud)

但我想要的是boolean成员而没有内在阶级:

@XmlElement(name = "ValueB")
protected boolean valueB;
Run Code Online (Sandbox Code Playgroud)

你怎么能这样做?

我不打算重新生成类,我想手动更改代码.


更新:根据接受的答案,我们创建了一个新方法,返回布尔值,条件是valueB == null.

当我们使用Hibernate时,我们用@Transient带有Hibernate注释的boolean getter 注释valueB 并注释它@Column.

java jaxb

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

关于C++编程实践的意见

我有一个我写的程序,不是太大.除了主要功能外,它还有大约15个其他功能,可以在不同时间调用各种任务.代码在一个文件中工作得很好,就像现在一样.

但是,我想知道是否有人有任何建议是否更智能/更高效/更好的编程将这些功能放在一个不同于main的单独文件中,或者它是否甚至是重要的.如果是,为什么?如果不是,为什么不呢?

我不是C++的新手,但绝对不是专家,所以如果你认为这个问题很愚蠢,请随时告诉我.

谢谢你的时间!

c++ code-organization

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

放置new以推迟到不同的构造函数

这样安全吗?我在实际实现中没有使用任何虚函数,但我很想相信即使我是,它仍然是安全的.

class Foo
{
    Foo()
    {
        // initialize things
    }

    Foo( int )
    {
         new ( this ) Foo();
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ placement-new

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

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

如何在IntelliJ IDEA中使用Scala(或者:为什么难以获得Scala的工作IDE)?

我最近放弃了尝试在Eclipse中使用Scala(像完成这样的基本内容不起作用).所以现在我正在尝试使用IntelliJ.我没有走得太远.

我已经能够编辑程序了(在语法高亮和完成之内......耶!).但我甚至无法运行最简单的"Hello World".这是原始错误:

Scala signature Predef has wrong version
Expected 5.0
found: 4.1 in .... scala-library.jar

但那是昨天的IDEA 9.0.1.见下文...

UPDATE

今天我卸载了IntelliJ 9.0.1,并安装了9.0.2 Early Availability,以及4/14稳定版的Scala插件.

然后我从头开始通过向导设置一个项目:

  • 新项目从头开始
  • JDK是1.6.u20
  • 接受默认(项目)而不是global/module
  • 接受将Scala 2.8.0beta1下载到项目的lib文件夹中

创建了一个新类:

object hello {
  def main(args: Array[String]) {
    println("hello: " + args);
  }
}

对于我的努力,我现在有一个全新的错误:)

这里是:

Scalac内部错误:类java.lang.ClassNotFoundException [java.net.URLClassLoader $ 1.run(URLClassLoader.java:202),java.security.AccessController.doPrivileged(Native Method),java.net.URLClassLoader.findClass(URLClassLoader.java) :190),java.lang.ClassLoader.loadClass(ClassLoader.java:307),sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:301),java.lang.ClassLoader.loadClass(ClassLoader.java:248) ,java.lang.Class.forName0(本机方法),java.lang.Class.forName(Class.java:169),org.jetbrains.plugins.scala.compiler.rt.ScalacRunner.main(ScalacRunner.java:72) ]

最终更新

我卸载了9.0.2 EA并重新安装了9.0.1,但这次使用的是2.7.3版本的Scala而不是默认的2.7.6,因为2.7.3是IntelliJ网站屏幕截图中显示的那个(我猜屏幕截图证明他们实际测试了这个版本!).现在一切正常!!!

scala intellij-idea scala-2.8 scala-2.7

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

如何查找外观大于2的字符串中的所有字符

我有一个关于算法的问题:

如何查找外观大于特定数字的字符串中的所有字符,例如2有效?

问候.

algorithm search

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

JSF的国际化,何时使用消息包和资源包?

何时以及如何使用<resource-bundle><message-bundle>标记本地化faces-config.xml?这两者之间的差异对我来说不是很清楚.

jsf localization internationalization

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

如何在VB.NET中使用"Into"LINQ表达式?

我正在转换C#这个LINQ表达式.但是,它似乎不起作用.

C#

 return (from w in fishSticks
         group w by w.FishQty into g
         orderby g.Key descending
         select g).First().First();
Run Code Online (Sandbox Code Playgroud)

VB

Return (From w In fishSticks
        Group w By w.FishQty Into g()
        Order By g.Key Descending
        Select g).First().First()
Run Code Online (Sandbox Code Playgroud)

Visual Studio变成Into gInto g()自己然后给了我这个错误:

在此上下文中无法访问方法"g"的定义.

有任何想法吗?

linq vb.net .net-4.0

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