标签: exploratory

如何调查对象/类型/等.来自Scala REPL?

我已经和Scala一起工作了一段时间,并且用它编写了10,000多行程序,但我仍然对一些内部工作感到困惑.我已经熟悉Java,C和Lisp后从Python来到Scala,但即使如此,它也很慢,而且一个巨大的问题是我在尝试研究对象/类型的内部工作时经常遇到的令人沮丧的困难/类/等.与Python相比,使用Scala REPL.在Python中,您可以查看任何对象foo(类型,全局变量中的对象,内置函数等),foo以查看事物的评估结果,type(foo)显示其类型,dir(foo)告诉您可以调用它的方法,以及help(foo)获取内置文档.你甚至可以做一些事情,比如help("re")查找名为re(包含正则表达式对象和方法)的包的文档,即使没有与之关联的对象.

在Scala中,您可以尝试在线阅读文档,查看库中的源代码等,但对于您不知道在哪里甚至是什么的事情来说,这通常很难(而且经常是这样的)一大块咬掉,考虑到庞大的类型层次) -东西在不同的地方(包左右浮动scala,Predef各种隐式转换,像符号::是几乎不可能谷歌).REPL应该是直接探索的方式,但实际上,事情更加神秘.说我看过foo某个地方的引用,但我不知道它是什么.显然没有"使用REPL系统地调查Scala事物的指南",但以下是经过大量试验和错误后我拼凑起来的内容:

  1. 如果foo是一个值(可能包括存储在变量中的内容以及伴随对象和其他Scala object),您可以foo直接进行评估.这应该告诉你结果的类型和价值.有时结果很有帮助,有时候不是.
  2. 如果foo是值,则可以使用它:type foo来获取其类型.(不一定具有启发性.)如果在函数调用中使用它,则可以获得返回值的类型,而无需调用函数.
  3. 如果foo是值,则可以使用它foo.getClass来获取其类.(通常比以前更有启发性,但对象的类与其类型有何不同?)
  4. 对于一个类foo,你可以使用classOf[foo],虽然结果的含义并不明显.
  5. 从理论上讲,你可以:javap foo用来反汇编一个类 - 它应该是最有用的类,但对我来说完全失败.
  6. 有时您必须从错误消息中将事物拼凑在一起.

使用失败的示例:javap:

scala> :javap List
Failed: Could not find class bytes for 'List'
Run Code Online (Sandbox Code Playgroud)

启发错误消息的示例:

scala> assert
<console>:8: error: ambiguous reference to overloaded definition, …
Run Code Online (Sandbox Code Playgroud)

scala exploratory read-eval-print-loop

41
推荐指数
2
解决办法
8476
查看次数

如何在Magento找到合适的活动?

有时在寻找方便的事件时我会做一些探索式编程...

这给了我一个充满无聊数据和传递对象名称的屏幕.除了STARTSTOP我通常不会寻找任何特定的东西来grep它,我必须依靠我的经验来确定可能的引导点.例如,在下订单时我知道某处通常有"报价",或者可以通过"付款"对象获得对订单的引用,反之亦然.

然后我必须记住删除我的标记(使用任何类型的版本时都不那么难).

您使用什么方法来查找事件?你能不修改核心代码吗?

events coding-style exploratory magento

11
推荐指数
2
解决办法
6109
查看次数

是否有用于记录用户操作以帮助重现错误的工具?

作为测试工程师,我经常参与探索性测试.当我遇到错误时,并不总是立即清楚哪些步骤导致了问题.所以,显然,我必须找到重现问题所需的步骤.根据具体情况,这可能需要很长时间.

真正有用的是一个记录工具,它可以跟踪鼠标和键盘操作,还可能存储已单击的组件的属性(AUT是用Java编写的).

我可能根本找不到合适的工具,但也许我的搜索方法是错误的.

有人能指出我正确的方向吗?

java testing logging manual-testing exploratory

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

ValueError: min() arg 是一个空序列 - 探索性分析

需要帮忙。我正在做一项任务,需要进行探索性数据分析。

我已经安装了seaborn。使用下面的代码行绘制图表时

chart1 = sns.catplot(x = "JUNCTIONTYPE", data = df3, kind = "count",  col= "SEVERITYDESC")
chart1.set_xticklabels(rotation=35, horizontalalignment='right')
Run Code Online (Sandbox Code Playgroud)

我收到以下错误。


ValueError                                Traceback (most recent call last)
<ipython-input-30-d7f0b1b2a27f> in <module>
----> 1 chart1 = sns.catplot(x = "JUNCTIONTYPE", data = df3, kind = "count",  col= "SEVERITYDESC")
      2 chart1.set_xticklabels(rotation=35, horizontalalignment='right')

~/conda/envs/python/lib/python3.6/site-packages/seaborn/categorical.py in catplot(x, y, hue, data, row, col, col_wrap, estimator, ci, n_boot, units, order, hue_order, row_order, col_order, kind, height, aspect, orient, color, palette, legend, legend_out, sharex, sharey, margin_titles, facet_kws, **kwargs)
   3722     # so we need …
Run Code Online (Sandbox Code Playgroud)

exploratory seaborn

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

有哪些方法可以发现测试用例

所有,

我是开发人员,但想了解有关测试过程和方法的更多信息.我相信这有助于我编写更加可靠的代码,因为它改进了我可以在将产品交付给测试团队之前使用我的单元测试进行测试的情况.我最近开始研究软件项目的测试驱动开发和探索性测试方法.

现在,我更容易找到我编写的代码的测试用例.但是,当我不是测试功能的开发人员时,我很高兴知道如何发现测试用例.比如说,让我们有一个基本的用户注册表单,我们在各种网站上看到.假设测试它的人不是表单的开发人员,那么应该如何测试表单上的输入字段,您的策略是什么?你会如何发现测试用例?我相信这种测试可以从探索性测试方法中获益,但我可能在这里错了.

我很感激你对此的看法.

谢谢,Byte

testing exploratory discovery testcase

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