首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏杨建荣的学习笔记

    运维开发测试中常见的8个问题

    我在这个过程中也做了反思,发现目前主要有以下几类问题: 1)测试环境线上环境的数据差异较大,很多场景在测试环境难以模拟,如果要尽可能完整的测试,需要快速的同步线上的数据,方便测试。 2)测试环境的少了很多流程的测试依赖,所以只能够尽可能模拟一些基础流程,对于一个较为复杂的功能想要模拟测试,花费的时间比较多,而且如果返工,代价比较高 3)在集成调试的过程中,如果要把某一个流程串起来 5)API层的设计不够清晰,目前很多API在需求变更中会对接口细节做一些调整,所以文档实现不大一样。 8)代码的容错处理不够健壮,有些功能还有执行失败,但是返回200的情况。 这8个地方的问题我相信但凡有一些业务需求开发的场景都会或多或少碰到,而这也是我最近要践行优化的一个变革面板。 这些工作中,怎么把设计思想模型设计的思路沉淀下来,我觉得还是得靠自己对于功能设计的逐步细化追求。

    49820发布于 2019-11-28
  • 来自专栏暴走的程序质检员

    测试开发-web开发flask

    20221110_测试开发-web开发flask 本文讲述web后端框架及flask简单实现 概念 web开发 web即万维网, 基于html超文本的图形信息系统, web应用基本上就是指现在B/S 架构上的应用 web开发: 即web应用开发, 编写代码服务端的代码, 对Browser的请求作出响应从而提供信息服务,目前比较流行MVC模式的框架 B/S架构: Browser/Server模式, B/S架构中BrowserServer进行通信的协议,基于TCP/IP Http请求四要素 请求方法: Restful API中主要用于表明请求的行为 请求url: 请求资源路径 请求头: token 要弄清楚如何进行web开发, 首先要先弄懂web服务器如何提供服务 web服务器如何提供服务? "Serving Http on port 8000...") # 运行服务器 http_server.serve_forever() wsgire是Python内置的对WSGI的参考实现,只能用来开发测试

    44310编辑于 2024-04-11
  • 来自专栏应兆康的专栏

    开发测试

    测试集(Test set) — 这部分数据通常用于评估算法的性能,但不要依靠这个数据对你的算法进行调参修改。 一旦你定义了一个开发测试集,你的团队就可以进行模型的建立,通过调整参数,特征选择等。从而制定最有效的机器学习算法。开发测试集可以很快的告诉你算法的运行情况。 换句话说,开发测试集的目的是为了让你对算法进行改进,使算法效果变得更好 所以你应该: • 选择开发测试集时,主要选择可以反映未来需要获取的数据 换句话说,你的测试集不应该只是可用数据的30% 比如:让你的朋友拍一些手机照片发给你,一旦你的应用启动后,你可以使用实际的数据来更新你的开发/测试集。 切记不要认为你的训练集测试集分布必须是一样的。尽量去选择那些可以反映真实情况的数据作为测试样本。

    76810发布于 2018-05-30
  • 来自专栏持续集成

    软件测试开发比例

    根据我的经验,测试自动化测试一个功能需要测试人员大概多久的时间与开发人员在产品中编码修复缺陷所需的时间差不多,这意味着他们的比例是1:1,这与编写单元测试所花费的时间编写代码的时间非常相似。 3、一些项目必须在更好数量的配置场景中来测试开发者可能会保持不变,但是你显示需要更多的QA来覆盖整个测试矩阵。 4、测试的自动化程度如何。如果测试不能很容易自动化,你需要更多的人来手工测试。 回复三: 我这里目前开发测试比是8:1。原因是我们非常重视自动化测试。所有的工作都需要接近完整的单元测试覆盖率。 一个真正优秀的测试工程师可能会支持2~3个开发的工作,特别是如果那些开发人员已经编写了有用的单元测试集成测试测试人员可以将其作为起点。 可以写单元测试,成为开发测试工程师,愿我们共同进步。 Q: 关于“测试开发比例”,你还有哪些问题想法? 欢迎评论、转发。

    5.1K10发布于 2020-06-12
  • 来自专栏测试技术分享

    开发测试的囚徒困境

    相信很多测试在面试时都被面试官问到:“你是如何开发人员相(si)处(bi)的?开发之间的关系是怎样的?遇到开发不认可的bug应该如何处理?” 一、测试开发之间的困境要说起测试人员开发人员之间的博弈,有一个特别具有代表性的例子—囚徒困境。此故事讲的是,两个嫌疑犯作案后被警察抓住,分别关在不同房间里审讯。 看完这个案例有没有觉得测试开发之间的关系很像上图的囚徒困境呢?在整个项目中,开发测试的关系其实不是对立的,测试开发是一个团队,都朝着统一的目标:让软件更完美而努力。 关于资源问题,开发测试难免有资源的冲突,但是让工作卡在环境上,是最影响项目进度的事情。 ;关于态度,测试开发同在一个项目中,都有着共同明确的目标,这个目标是大家的。

    53420编辑于 2022-06-15
  • 来自专栏FunTester

    socket接口开发测试初探

    由于接下来有一个聊天室需求的项目,所以在确定完技术方案后,就要开始着手socket协议的接口测试准备了。 从零开始学习少不了抄代码的过程,抄完之后,再去魔改,不断验证各种API函数的使用,看看源码注释,逐步掌握该技能。 ServerEndpointExporter serverEndpoint() { return new ServerEndpointExporter(); } } client代码测试脚本 测试脚本我用了三个人在某一个聊天室中里面从进入,发言,到退出聊天室的场景。 } } 控制台输出 INFO-> 当前用户:fv,IP:10.60.192.21,工作目录:/Users/fv/Documents/workspace/fun/,系统编码格式:UTF-8,

    1.4K50发布于 2020-11-20
  • 来自专栏测试开发干货

    接口测试平台代码实现8:首页的继续开发

    2.hao123风格 特点:满屏的超链接,花里胡哨,但是很实用,全都是常用网址,设计公司内测试平台的话也可以用各种内部常用链接作为首页,这样做更容易让同事保存成书签。 3.数据总结显示: 特点:此类页面更加直观的给用户展示必要数据,显得高大上正规。但是要求技术难度较高,且需要大量的网上去抄第三方控件,首次进入加载会很慢。 所以我们把welcome.html的title改成测试平台: 这样我们后续进入的各种页面都会显示这个了 好的,让我们打开新建的home.html开始开发: 然后在浏览器打开看看效果: 接着设计, 现在让我们打开网址:127.0.0.1:8000/home/ 来看看刚刚开发的首页! 但是图片内容可能引起小邪同学的极度 不适反感,所以我们换个图。比如我们去做一个平台自己的专属logo!

    97720编辑于 2022-05-19
  • 来自专栏从零开始学自动化测试

    python测试开发django-8 mysql环境安装

    这是为了防止有人从该主机试图攻击数据库系统 max_connect_errors=10 # 服务端使用的字符集默认为UTF8 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default_authentication_plugin=mysql_native_password [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=utf8 接下里初始化数据,以管理员权限打开cmd,cd到bin目录 Your MySQL connection id is 8 Server version: 8.0.11 Copyright (c) 2000, 2018, Oracle and/or its affiliates

    84230发布于 2018-12-17
  • 来自专栏应兆康的专栏

    开发测试

    测试集(Test set) — 这部分数据通常用于评估算法的性能,但不要依靠这个数据对你的算法进行调参修改。 一旦你定义了一个开发测试集,你的团队就可以进行模型的建立,通过调整参数,特征选择等。从而制定最有效的机器学习算法。开发测试集可以很快的告诉你算法的运行情况。 换句话说,开发测试集的目的是为了让你对算法进行改进,使算法效果变得更好 所以你应该: • 选择开发测试集时,主要选择可以反映未来需要获取的数据 换句话说,你的测试集不应该只是可用数据的30%这么简单 比如:让你的朋友拍一些手机照片发给你,一旦你的应用启动后,你可以使用实际的数据来更新你的开发/测试集。 切记不要认为你的训练集测试集分布必须是一样的。尽量去选择那些可以反映真实情况的数据作为测试样本。

    1.2K60发布于 2018-05-09
  • 来自专栏应兆康的专栏

    开发测试集应该多大?

    7 开发测试集应该多大? 开发集应该足够大,大到可以检测出不同算法之间的差异。比如:如果分类器A的精度为90.0%,分类器B精度为90.1%。 如果你的开发集只有100条,那么你可能检测不出这0.1%的差异,与其它机器学习的问题相比,100条数据很小,常见的开发集数据规模在1000到10000条之间。数据量越高,模型之间的差异越明显。 在这种情况下,开发集的数据量可能远远超过10000条,只为了对算法进行改进。 测试集要多大?它也应该足够大,大到你有一个很高自信度去对系统的整体性能进行评估。这里有一个方法:将30%的数据用于测试。 但是在大数据的时代下,我们面对的机器学习问题数据量可能会超过10亿条样本,开发集与测试集之间的比例一直在减小,但是开发测试集的绝对数量在增加。在给开发集和数据集分配时,没必要过多的进行分配。 [2] 理论上,如果一个算法的变化差异符合统计学上的某种变化,那么我们可以进行测试。在实践中,大多数团队都会这样做(除非它们发表论文)。而我没有发现用于统计意义上的测试

    56710发布于 2018-05-30
  • 来自专栏啄木鸟软件测试

    我对单元测试测试驱动开发的见解

    单元测试的特征 与其它代码隔离:单元测试代码不影响其它代码,需建立独立项目文件; 与其他开发人员隔离:每个开发人员编写的单元测试不互相干扰; 有针对性:单元测试是针对一个特定的工作单元编写的; 可重复: 阻碍开发人员编写单元测试可能的原因 大部分公司即使要求编写单元测试也是先写业务代码,再编写测试代码去测试。由于开发人员水平不齐,业务代码不能保证质量,可能导致难以测试测试驱动开发——TDD TDD 的理念 当我们拿到需求,按照瀑布流开发的模式进行的发,应当是创建业务项目,编写业务代码,需要的话编写测试代码,测试工程师测试,然后验收发布。 TDD 的好处 严格根据TDD思维,遵循SOLID原则 开发能保证代码质量 TDD 确保了代码与业务需求高度一致性 TDD 鼓励创建更简单、针对性更强的库API TDD 要落实测试单元,需要鼓励与业务方持续沟通 理解测试驱动开发的理念,能让我们编写更漂亮的代码倒是真的。 TDD 如何完成软件开发 TDD 的三个阶段: 红灯阶段 编写贴合需求的测试代码,尽量保证覆盖需求每个点。

    99520发布于 2019-12-12
  • 来自专栏小锋学长生活大爆炸

    【教程】Digispark搭建开发环境测试烧录

    搞了一个digispark模块,很便宜才10块钱,可以模拟HID,也可以当做自带USB的最小arduino开发板,非常好用。以下是搭建开发环境测试烧录。 raw.githubusercontent.com/digistump/arduino-boards-index/master/package_digistump_index.json 3、安装digispark的开发包 : Digistump AVR Boards 4、选择开发板: Digispark引脚 代码烧录 1、输入测试代码: // the setup routine runs once when you press

    45710编辑于 2025-05-31
  • 来自专栏FunTester

    Grpc服务开发接口测试初探【Java】

    最近要准备开始测试gRPC框架的接口了,所以特来学习一下gRPC的基础知识。 项目过于复杂,包含了各类使用场景的演示Demo测试Demo。对于我这个新手菜鸡来讲略微超出我能力范围了。所以在我学完了之后准备写个简单的Demo,给各位同为小白的Tester分享一下。 System.out.println("收到响应: " + orderResponse.getMsg()); managedChannel.shutdown(); } } 测试 执行上面的用例,可以在控制台看到打印结果: 18:49:53.802 grpc-default-executor-0 用户FunTester来了 已经完美实现了预定目标,后续我会分享Go语言版本的gRPC服务端开发测试

    98820编辑于 2022-05-17
  • 来自专栏FunTester

    gRPC服务开发接口测试初探【Go】

    之前写过了Grpc服务开发接口测试初探【Java】,中间耽搁了一些时间,Go版本的gRPC测试开发实践才有时间学习使用。其中也是由于自己Go语言不够熟悉导致的。 我是放在了proto文件的同级目录。 后面我先把Java的学完,再回过头来看Go的,按照这个顺序学习分享。 客户端输出: === RUN TestGrpcClient msg: Hello FunTester --- PASS: TestGrpcClient (0.00s) PASS Go语言的gRPC测试开发实践已经完事儿 ,大概率上我不会在工作中使用Go作为主力gRPC测试语言,后面测试实践内容还是会以Java为主。

    73810编辑于 2022-05-17
  • 来自专栏极客编程

    EOS智能合约开发测试框架EOSFactory

    EOS Factory是一个EOS智能合约开发测试框架。 自2017年秋季以来,Tokenika一直致力于创建基于Python的EOS智能合约开发平台,以便轻松创建,测试部署智能合约。 5.使用Bios合约几个测试帐户初始化testnet。 6.部署智能合约。 7.运行单元测试8.下线testnet。 9.修改智能合约或单元测试并跳转到第3步。 在EOSFactory中,上述过程的每一步都由Python类方法完全自动化。作为开发人员,你只提供创意部分,即智能合约单元测试的内容。 路线图 EOSFactory仍在开发中,事情正在得到解决改进。现在我们正在研究以下功能: 升级到更高级的机制来创建和管理单元测试。 这里是原文EOS 智能合约开发测试框架 EOS Factory

    1.3K10发布于 2018-12-10
  • 来自专栏程序员阿常

    测试开发测试,还是开发

    读者提问: 测试开发工程师到底是测试,还是开发 ? 阿常回答: 既是测试,也是开发。 首先,测试开发测试工程师,他们是服务于业务测试同学的,目标是解决业务测试工程师的具体问题。 这就要求他们必须具备测试思维。 其次,测试开发也是开发工程师,他们会针对业务测试同学的具体诉求设计研发对应的小工具,或者研发定制化的一套测试平台。这就要求他们同时具备编程能力。 阿常碎碎念: 前一阵子阿常团队招测试开发时,就有纯开发经历的同学来面试,一般看到这样的简历阿常会直接 pass 不考虑。 当然不排除有纯开发经验的同学,同时也具备良好的测试思维,但这只占少数部分。 通常都是有真正测试实践经历的测试同学,才可能具备更好的测试思维。因此团队在招测试开发时,倾向于找有测试经验的同学。 看完今天的分享对你是不是有所启发呢,有任何想法都欢迎大家后台私信阿常,一起探讨交流

    1K40编辑于 2022-09-01
  • 来自专栏DevOps持续交付

    测试开发:是测试还是开发

    他们的工作似乎同时涉及到了测试开发两个领域,那么,测试开发测试还是开发呢? 一、从历史背景看测试开发的起源 在传统的软件开发过程中,开发测试往往是分开的。 测试开发工程师需要根据产品需求和用户故事,编写详细的测试计划测试用例,确保软件产品的功能性能符合预期。 2. 调试修复问题:当测试过程中发现问题错误时,测试开发工程师需要与开发人员一起协作,调试修复这些问题。这个过程中,他们可能需要查看日志、分析代码、修改代码等。 4. 编写维护测试代码:为了提高测试效率质量,测试开发工程师需要编写维护测试代码。这些代码可以是自动化测试脚本、性能测试脚本等。 5. 测试工具将更加智能化:未来的测试工具将更加智能化,能够自动识别修复问题。这将使测试开发工程师的工作更加高效准确。 4. 测试开发将更加融合:未来的软件开发过程中,测试开发将更加融合。

    1.5K00编辑于 2023-12-06
  • 来自专栏国产程序员

    测试性能(Java 8 的循环Java 7 的循环耗时的对比测试)

    Java 8 里面的stream 有串行流并行流之分。 说高级的stream就是那个并行流。下面是那个并行流的简单实现。只要是继承Collection类的都可以这么用。 并行流串行流的介绍 为了适应目前多核机器的时代,提高系统CPU、内存的利用率,在jdk1.8新的stream包中针对集合的操作也提供了并行操作流串行操作流。 Stream api中声明可以通过parallel()与sequential()方法在并行流串行流之间进行切换。 可以看到java8的lambda的循环java7的循环效率差不多,并行串行的流的差别,可以看出并行的流,在循环的时候,就不是 1 - 9999 挨着输出。而是,看多核的心情。 那么Java 8之前会这样写: for (ElementType e : list) { System.out.println(e); } 从Java 8开始,使用ArrayList的新

    1.8K30发布于 2019-07-03
  • 来自专栏测试开发技术

    测试开发是“懂测试开发”还是“懂开发测试”?

    这类测试开发工程师,以敏锐的测试思维为核心,开发技能为辅。 在日常工作中,他们的测试经验就是他们的 “火眼金睛”,能够快速发现软件中的缺陷潜在风险。 从职业发展路径来看,许多测试人员为了提升自己的竞争力,逐渐学习开发技能,从而转型成为测试开发工程师。他们就像从普通士兵成长为特种部队成员一样,凭借着扎实的测试基础新掌握的开发技能。 他们更注重从测试的角度出发,利用开发技能解决测试过程中的实际问题,提升测试效率质量。 4、两者之差异与共通 4.1 差异:思维导向与技能侧重 思维导向: “懂测试开发”,思维更偏向于开发过程中的整体架构设计功能实现,在测试时会从开发的底层逻辑去思考如何更好地验证软件。 技能侧重: 前者在开发技能上更加全面深入,对各种开发框架、算法等都有深入研究,测试技能是在开发基础上的拓展应用。

    40300编辑于 2025-05-08
  • 代码重构测试驱动开发(TDD)的区别联系

    在软件开发过程中,代码重构测试驱动开发(TDD)是两种常见的技术实践,它们旨在改善代码质量、可维护性可扩展性。虽然它们的目标有所不同,但它们之间存在一定的联系。 提高可维护性:优化代码结构设计,使代码更易于理解、修改扩展,降低维护成本。2.测试驱动开发(TDD)2.1 目标:测试驱动开发的主要目标是通过编写测试用例来驱动代码的开发,先写测试再写实现。 3.区别联系区别:代码重构注重优化改善现有代码的结构设计,以提高代码的可读性可维护性;而TDD 注重通过编写测试用例来驱动代码的开发,以保证代码的正确性稳定性。 test_add_negative(self): self.assertEqual(add(-1, 1), 0)if __name__ == '__main__': unittest.main()5.总结代码重构测试驱动开发 通过代码重构,我们可以优化改进现有代码的结构设计;通过TDD,我们可以通过编写测试用例来驱动代码的开发,保证代码的正确性稳定性。

    43610编辑于 2024-02-29
领券