当前位置: 首页 > news >正文

哪个网站的财经做的好知乎厦门建设执业资格注册管理中心网站

哪个网站的财经做的好知乎,厦门建设执业资格注册管理中心网站,网上搞钱的野路子,品牌vi是什么意思TDD 的核心理念是 “先写测试,再写功能”,其过程遵循一个严格的循环,即 Red-Green-Refactor: TDD 的流程 1. Red(编写失败的测试) 根据需求,先编写一个测试用例,描述期望的行为。…

TDD 的核心理念是 “先写测试,再写功能”,其过程遵循一个严格的循环,即 Red-Green-Refactor:

TDD 的流程

1. Red(编写失败的测试)

  • 根据需求,先编写一个测试用例,描述期望的行为。
  • 运行测试用例,这时测试会失败(因为功能还没实现)。
  • 失败的测试是 TDD 的起点,用来验证当前功能还未完成。

2. Green(实现功能使测试通过)

  • 编写代码实现功能,只编写足够通过测试的代码。
  • 不追求完善或优化,只需让测试通过。
  • 运行测试确保它变为绿色(成功)。

3. Refactor(重构代码)

  • 在测试通过的前提下,对代码进行重构。
  • 目标是提高代码质量(如消除冗余、优化性能),同时保持所有测试用例通过。
  • 运行测试用例,确保重构后功能不变。

为什么先写测试?

1. 提高代码质量

  • 在功能实现前明确验证条件,降低缺陷风险。
  • 保证功能模块始终可测试。

2. 支持重构

  • 测试用例成为保障,让开发者在重构时无需担心功能被破坏。

3. 明确需求

  • 编写测试用例时,开发者必须准确理解功能需求,并转化为可验证的行为。测试引导功能开发,避免开发过程中偏离需求。

举例

接口文档:计算税收

接口概述

本接口用于根据用户提供的收入(income)和月份(months)计算应缴纳的税收。用户通过发送GET请求到指定URL,传入收入金额和月份数,接口将返回计算后的税收金额。

请求 URL
GET http://localhost:8087/getTax
请求参数
参数名类型必填描述
incomeint用户的收入金额
monthsint收入的月份数
请求示例
GET http://localhost:8087/getTax?income=1234&months=3
响应格式
  • 格式: JSON
  • 示例:
{"tax": 123.45
}
响应参数
参数名类型描述
taxdouble计算出的税收金额

TDD

先创建接口:

@RestController
public class TaxController {@AutowiredProcessTaxService processTaxService;@GetMapping("/getTax")public ResponseEntity calculateTax(@RequestParam int income , @RequestParam int months) {return ResponseEntity.ok().body(null);}}

我们需要在这里实现业务逻辑,将收入和月份作为用户输入并处理税收。现在我们需要实现业务逻辑。我们从单元测试开始实现它。

public class ProcessTaxTest {@InjectMocksProcessTaxService processTaxService;@Beforepublic void init() {MockitoAnnotations.initMocks(this);}@Testpublic void testTaxCalcualtion(){int income = 10;int months = 5;double totalTax = processTaxService.calculate(income, months);Assert.assertEquals(15.0, totalTax, 0.001);}}

在这里,我创建了ProcessTaxService类,它将用于实现税收计算代码。但是这个类在我们的代码库中不存在(红色标志),因此我们需要现在创建它。

@Service
public class ProcessTaxService {private double taxPercentage = 0.3;public double calculate(int income, int months) {return income * months * taxPercentage;}}

重构代码,请确保传入的incomemonths参数为正整数。

@Service
public class ProcessTaxService {private double taxPercentage = 0.3;public double calculate(int income, int months) {if (income <= 0 || months <= 0) {throw new IllegalArgumentException("Income and months must be positive values.");}return income * months * taxPercentage;}}
@RestController
public class TaxController {@AutowiredProcessTaxService processTaxService;@GetMapping("/getTax")public ResponseEntity calculateTax(@RequestParam int income , @RequestParam int months) {try {double tax = processTaxService.calculate(income, months);return ResponseEntity.ok().body(tax);} catch (IllegalArgumentException e) {return ResponseEntity.badRequest().body(null);}}}

现在我们已经成功地编写了使用测试驱动方法计算总税收所需的代码。将ProcessTaxService类集成到Controller类中,在用户发送请求时计算税收。

@RestController
public class TaxController {@AutowiredProcessTaxService processTaxService;@GetMapping("/getTax")public ResponseEntity calculateTax(@RequestParam int income , @RequestParam int months) {return ResponseEntity.ok().body(processTax.calculate(income, months));}}
http://www.yayakq.cn/news/945048/

相关文章:

  • 贺州市城乡住房建设厅网站无锡网页设计培训公司
  • 苏州做网站的公司甘肃企业建站系统费用
  • 企业设计网站公司哪家好自己做的网站可以买东西吗
  • 网站公司做的网站经常打不开WordPress有客户端么
  • 建站行业前景怎么样网站主页的要素
  • 金融软件网站建设公司en wordpress
  • 天津建站软件wordpress视频曹鹏
  • 自己建设网站需要些什么北京中小企业建站价格
  • 一台vps可以做几个网站建筑公司网站常用长尾词
  • 网站分类代码做网站需要什么部门批准
  • 广东知名网站营销型网站建设公司哪家建设营
  • 专业做酒类营销的网站黑群晖Wordpress
  • 企业网站建站策划书婚庆网站建设总结
  • 广州公司网站提供p2p网贷网站建设哪家好
  • 移动端网站开发流程图江西网站设计服务
  • 网站详情怎么做的设计风格网站
  • 服装行业网站建设及推广织梦cms默认密码
  • 成都网站建设公司哪家专业双浩建设网站
  • 优惠券购物网站怎么做美化WordPress的导航
  • 西部数码上传网站网站建设教程公司
  • 景德镇做网站的公司网络建设服务与网站运营推广
  • 辽宁营销型网站建设梧州论坛热门主题
  • 网站管理 设置开启哪家微网站做的好
  • 河北中保建设集团网站首页外包网络推广公司推广网站
  • 软件下载网站开发 论文广东深圳南山区
  • 门户网站推广优势wordpress标签文章数量
  • 全球网站建设汕头seo优化培训
  • 平顶山高端网站建设wordpress引用php
  • 大兴58网站起名网站制作网络营销模式有哪些?
  • 做网页网站 的公司江苏有哪些做网站建设的公司