• 0
  • 0
分享
  • 游戏测试面试题:1%的概率怎么测?——软件测试圈
  • 曼倩诙谐 2024-01-05 10:50:14 字数 983 阅读 1982 收藏 0

  在面试中,有时会遇到怎么测概率的问题。比如一个活动的抽奖概率怎么测?比如一个boss击杀后1%的概率掉落材料宝箱,该怎么测?材料升级有20%的概率会强化失败,怎么测?装备强化后会有5%的概率产生暴击,怎么测?…

  概率的问题总是大同小异,终究是在问概率的测试方法。先说明,我这里没有也不知道正确答案,我只是留下一个参考,悟得多少或者说如何组织语言,那就要看你了。

  在我们实际工作中,对于这种概率问题,其实看得并不重,1%的概率和2%的概率有什么区别?你要是脸黑,99%的概率你要抽第100次才中,所以我认为问这个问题的侧重点在于思维。

  实际工作中如何?比如一个转盘的大奖概率是1%,我们是怎么测试的呢?

  首先,看功能是否正常,也就是说能不能正常抽到这个大奖。尝试抽取之后发现在抽了n次之后,确实中了大奖,那么之后再考虑概率的问题。

  至于概率,就有点玄学,但是只要保持在一定概率内,就ok了,不需要那么精准。比如,你抽个10次出大奖,再抽个10次还出大奖,再来10次依旧出大奖,那么这个1%的概率毫无疑问是有问题的。

  一顿狂抽,凭直觉猜测不出来这个1%的概率之后呢?

  最简单的办法就是看策划配置表。因为为了方便这种概率功能,程序是不会做写死概率这种蠢事情的,策划也不同意,他会要求概率可控,也就是说程序实现概率功能,策划可以通过配表中的数字来自由控制概率。

  策划控制概率的好处在于,他可以随时调整掉落,也就是产出,这就是数值策划要做的事情了,小概率就意味着高价值高受益。

  再说回配置表。既然是配置表,那么必然是可以填写字段中的数字,也就是0-1之间的数。(在实际中,一般概率分母是一万)

  既然设计数字,那么对于我们测试而言就可以通过边界值的方法来测试,一个是0,你怎么抽也抽不到这个大奖;一个是100,随便一抽就是大奖;再一个是50,抽中与不中概率参半,相信通过更改配置概率,你就可以知道这个功能的概率程序是对的。

  既然程序对了,那我们只有核查策划配置表就行。你说概率是1%,我看你配置表明明写的是2%,虽然这1%的差别可能感受不明显,但是你配置留下的证据说明概率是不符合需求,也就是说,策划在忽悠我。

  好了,这是我的答案。


作者:不争    

来源:http://www.51testing.com/html/85/n-7796185.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   最近碰到一个问题,需求是把做好的报告发到领导邮箱(只能发邮箱,不接受邮箱链接等方式),大家都知道outlook对js是不支持的,只支持最简单的html样式,最后选定的方法是截图,但是报告可能很长啊,怎么能一次性全截下来呢,请大家往下看!  首先本次实现是用的python3.6+selenium+chrome,python的安装和python库的安装就不多说了。用代码控制chrome的时候需要下一个driver,下载地址:http://chromedriver.storage.googleapis.com/index.html  下载之前要注意看看你电脑上装的chrome版本号,把下好的dr...
            0 0 3327
            分享
          • 提到测试环境,首先就要搞清楚开发环境,测试环境,生产环境三者有什么区别?项目部署环境一般可分为三种:生产环境,测试环境,开发环境开发环境:开发环境时程序猿们专门用于开发的服务器,配置可以比较随意,为了开发调试方便,一般打开全部错误报告和测试工具,是最基础的环境。测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产服务器上,是开发环境到生产环境的过度环境。生产环境:生产环境是指正式提供对外服务的,一般会关掉错误报告,打开错误日志,是最重要的环境。部署分支一般为master分支。上述环境也可以说是系统开发的三个阶段:开发->测试->上线,其中...
            0 0 2074
            分享
          •   简介  测试计划是指描述了要进行的测试活动的范围、方法、资源和进度的文档。它主要包括测试项、被测特性、测试任务和风险控制等。  所以在使用ChatGPT输出结果之前,我们需要先将文档的内容框架梳理好,以及将内容范围划定好,必要的时候,可以添加对应的角色。  实践演练  提示词:如果我是一个测试经理,现在需要输出一个版本的测试计划。测试计划是指描述了要进行的测试活动的范围、方法、资源和进度的文档。它主要包括测试项、被测特性、测试任务、执行任务和风险控制等。  当您需要输出一个版本的测试计划时,以下是一个可以帮助您构建测试计划文档的一般步骤和内容大纲。请注意,具体的内容可能会因项目的性质、规模...
            0 0 889
            分享
          •   前言  接口测试是我们在测试工作中经常见到的,我们工作中常用到的接口工具有jmeter,postman,soupUI等工具,那么在通过代码做接口测试呢?或者通过代码的方式做接口自动化呢?  requests  requests属于python的第三方库,通常用来发送http和https的请求,既然能向http和https发送请求,那么就能来做接口测试。  安装pip install requests  官方文档  https://requests.readthedocs.io/en/master/  requests使用方法  了解requests是如何安装的了,也知道...
            12 12 2561
            分享
          •   简介  在如何有效地测试Go代码一文中,我们谈论了单元测试,针对它的两大难点:解耦、依赖,提出了面向接口、mock 依赖的解决方案。同时,该文还讨论了一些 Go 领域内的实用测试工具,欢迎读者阅读。单元测试关注点是代码逻辑单元,一般是一个对象或者一个具体函数。我们可以编写足够的单元测试来确保代码的质量,当功能修改或代码重构时,充分的单元测试案例能够给予我们足够的信心。单元测试之上是开发规范。在敏捷软件开发中,有两位常客:测试驱动开发(Test-Driven Development,TDD)和行为驱动开发(Behavior-driven development,BDD)。它们是实践与技术,同...
            0 0 560
            分享
      • 51testing软件测试圈微信