今天下午接到百度作业帮的面试邀请电话,说要进行面试,我们约的是明天,挂了电话我上网查了一下我申请的职位竟然是软件测试,,,,好吧,只能恶补了

关于软件测试中的单元测试-----mock讲解:“

java的mock测试框架


无论是敏捷开发、持续交付,还是测试驱动开发(TDD)都把单元测试作为实现的基石。随着这些先进的编程开发模式日益深入人心,单元测试如今显得越来越重要了。在敏捷开发、持续交付中要求单元测试一定要快(不能访问实际的文件系统或数据库),而TDD经常会碰到协同模块尚未开发的情况,而mock技术正是解决这些问题的灵丹妙药。

mock技术的目的和作用是模拟一些在应用中不容易构造或者比较复杂的对象,从而把测试与测试边界以外的对象隔离开。

我们可以自己编写自定义的Mock对象实现mock技术,但是编写自定义的Mock对象需要额外的编码工作,同时也可能引入错误。现在实现mock技术的优秀开源框架有很多,本文对几个典型的mock测试框架作了简明介绍,希望对大家有所帮助。

1.EasyMock

EasyMock 是早期比较流行的MocK测试框架。它提供对接口的模拟,能够通过录制、回放、检查三步来完成大体的测试过程,可以验证方法的调用种类、次数、顺序,可以令 Mock 对象返回指定的值或抛出指定异常。通过 EasyMock,我们可以方便的构造 Mock 对象从而使单元测试顺利进行。

EasyMock 是采用 MIT license 的一个开源项目,可以在 Sourceforge 上下载到。(http://sourceforge.net/projects/easymock/files/EasyMock/)

如果使用maven也可以如下引入:

复制代码
<dependency><groupId>org.easymock</groupId><artifactId>easymock</artifactId><version>3.1</version><scope>test</scope></dependency>
复制代码

使用EasyMock大致可以划分为以下几个步骤:

①    使用 EasyMock 生成 Mock 对象;

②    录制 Mock 对象的预期行为和输出;

③    将 Mock 对象切换到 播放 状态;

④    调用 Mock 对象方法进行单元测试;

⑤    对 Mock 对象的行为进行验证。

现在用一个例子来简单呈现以上的步骤,假设有一个类需要被模拟的类如下:

复制代码
publicclassClass1Mocked {publicString hello(String name){System.out.println("hello "+name);return"hello "+name;}publicvoidshow(){System.out.println("Class1Mocked.show()");}
}
复制代码

首先静态导入EasyMock的方法:

importstaticorg.easymock.EasyMock.*;

例1.1 EasyMock第一个例子

复制代码
@TestpublicvoidtestMockMethod() {Class1Mocked obj= createMock(Class1Mocked.class);①expect(obj.hello("z3")).andReturn("hello l4");②replay(obj);③String actual= obj.hello("z3");④assertEquals("hello l4", actual);verify(obj);⑤
}
复制代码

在⑤验证阶段中,会严格验证mock对象是否按录制的行为如期发生(包括执行的顺序及次数)。

2.mockito

EasyMock之后流行的mock工具。相对EasyMock学习成本低,而且具有非常简洁的API,测试代码的可读性很高。

mockito可以在https://code.google.com/p/mockito/上下载,如果使用maven可以如下引入:

复制代码
<dependency><groupId>org.mockito</groupId><artifactId>mockito-all</artifactId><version>1.9.5</version><scope>test</scope></dependency>
复制代码

使用mockito大致可以划分为以下几个步骤:

①    使用 mockito 生成 Mock 对象;

②    定义(并非录制) Mock 对象的行为和输出(expectations部分);

③    调用 Mock 对象方法进行单元测试;

④    对 Mock 对象的行为进行验证。

现在用一个例子来简单呈现以上的步骤:

首先静态导入mockito的方法:

importstaticorg.mockito.Mockito.*;

例2.1 mockito第一个例子

复制代码
@TestpublicvoidtestMockMethod() {Class1Mocked obj=mock(Class1Mocked.class);①when(obj.hello("z3")).thenReturn("hello l4");②String actual=obj.hello("z3");③assertEquals("hello l4",actual);verify(obj).hello("z3");④//verify(obj,times(1)).hello("z3");//可以加参数验证次数}
复制代码

可以看到与EasyMock相比,少了切换到播放状态一步。这是很自然的,本来就不是录制而谈播放呢,而在验证阶段可以通过增加参数(time(int)、atLeastOnce()、atLeast(int)、never()等)来精确验证调用次数。

而如果要验证调用顺序可以如下控制:

例2.2 验证顺序

复制代码
@TestpublicvoidtestMockMethodInOrder() {Class1Mocked objOther= mock(Class1Mocked.class);Class1Mocked objCn= mock(Class1Mocked.class);when(objOther.hello("z3")).thenReturn("hello l4");when(objCn.hello("z3")).thenReturn("hello 张三");String other= objOther.hello("z3");assertEquals("hello l4", other);String cn= objCn.hello("z3");assertEquals("hello 张三", cn);InOrder inOrder= inOrder(objOther, objCn);//此行并不决定顺序,下面的两行才开始验证顺序inOrder.verify(objOther).hello("z3");inOrder.verify(objCn).hello("z3");
}
复制代码

在之前的介绍的模拟操作中,我们总是去模拟一整个类或者对象,对于没有使用 When().thenReturn()方法指定的函数,系统会返回各种类型的默认值(具体值可参考官方文档)。而局部模拟创建出来的模拟对象依然是原系统对象,虽然可以使用方法When().thenReturn()来指定某些具体方法的返回值,但是没有被用此函数修改过的函数依然按照系统原始类的方式来执行,下面对非局部模拟和局部模拟分别举例来说明:

例2.3 非局部模拟

复制代码
@TestpublicvoidtestSkipExpect() {Class1Mocked obj= mock(Class1Mocked.class);assertEquals(null, obj.hello("z3"));obj.show();verify(obj).hello("z3");verify(obj).show();
}
复制代码

上面的代码省略了expectations部分(即定义代码行为和输出),运行该测试可以看到hello方法默认返回null(show方法本来就是无返回值的),而且在控制台中两个方法都没有输出任何语句。

mockito的局部模拟有两种方式,一种是doCallRealMethod()方式,另一种是spy()方式。

例2.4 局部模拟doCallRealMethod ()方式

复制代码
@TestpublicvoidtestCallRealMethod () {Class1Mocked obj= mock(Class1Mocked.class);doCallRealMethod().when(obj).hello("z3"); assertEquals("hello z3",obj.hello("z3"));assertEquals(null,obj.hello("l4"));obj.show();verify(obj).hello("z3");verify(obj).hello("l4");verify(obj).show();
}
复制代码

运行这个测试会发现在执行hello("z3")时会执行原有的代码,而执行hello("l4")时则是返回默认值null且没有输出打印,执行show()同样没有输出打印。

例2.5 局部模拟spy()方式

复制代码
@TestpublicvoidtestSpy() {Class1Mocked obj= spy(newClass1Mocked());doNothing().when(obj).show();assertEquals("hello z3",obj.hello("z3"));obj.show();verify(obj).hello("z3");verify(obj).show();
}
复制代码

运行这个测试会发现在执行hello("z3")时会执行原有的代码,但是执行show()时在控制台中没有打印语句。

但值得注意的是在mockito的psy()方式模拟中expectations部分使用的语法不同,执行起来存在微妙的不同,如下:

例2.6 值得注意的“陷阱”

复制代码
@TestpublicvoidtestSpy2() {Class1Mocked obj= spy(newClass1Mocked());when(obj.hello("z3")).thenReturn("hello l4");assertEquals("hello l4",obj.hello("z3"));verify(obj).hello("z3");
}
复制代码

上面的代码虽然能顺利运行,但在控制台中输出了hello z3,说明实际的代码仍然执行了,只是mockito在最后替换了返回值。但下面的代码就不会执行实际的代码:

复制代码
@TestpublicvoidtestSpy3() {Class1Mocked obj= spy(newClass1Mocked());doReturn("hello l4").when(obj).hello("z3");assertEquals("hello l4",obj.hello("z3"));verify(obj).hello("z3");
}
复制代码

3.PowerMock

这个工具是在EasyMock和Mockito上扩展出来的,目的是为了解决EasyMock和Mockito不能解决的问题,比如对static, final, private方法均不能mock。其实测试架构设计良好的代码,一般并不需要这些功能,但如果是在已有项目上增加单元测试,老代码有问题且不能改时,就不得不使用这些功能了。

PowerMock 在扩展功能时完全采用和被扩展的框架相同的 API, 熟悉 PowerMock 所支持的模拟框架的开发者会发现 PowerMock 非常容易上手。PowerMock 的目的就是在当前已经被大家所熟悉的接口上通过添加极少的方法和注释来实现额外的功能。目前PowerMock 仅扩展了 EasyMock 和 mockito,需要和EasyMock或Mockito配合一起使用。

PowerMock可以在https://code.google.com/p/powermock/上下载,本文以PowerMock+mockito为例,使用maven的话,添加如下依赖即可,maven会自动引入mockito的包。

复制代码
<dependency><groupId>org.powermock</groupId><artifactId>powermock-api-mockito</artifactId><version>1.5</version><scope>test</scope></dependency><dependency><groupId>org.powermock</groupId><artifactId>powermock-module-junit4</artifactId><version>1.5</version><scope>test</scope></dependency>
复制代码

现在举例来说明PowerMock的使用,假设有一个类需要被模拟的类如下:

复制代码
publicclassClass2Mocked {publicstaticintgetDouble(inti){returni*2;}publicString getTripleString(inti){returnmultiply3(i)+"";}privateintmultiply3(inti){returni*3;}
}
复制代码

首先静态导入PowerMock的方法:

importstaticorg.powermock.api.mockito.PowerMockito.*;

然后在使用junit4的测试类上做如下声明:

@RunWith(PowerMockRunner.class)
@PrepareForTest( { Class2Mocked.class})

例3.1 模拟静态方法

复制代码
@TestpublicvoidtestMockStaticMethod() {mockStatic(Class2Mocked.class);when(Class2Mocked.getDouble(1)).thenReturn(3);intactual = Class2Mocked.getDouble(1);assertEquals(3, actual);verifyStatic();Class2Mocked.getDouble(1);
}
复制代码

PowerMockit的局域模拟使用方式和mockito类似(毕竟是扩展mockito),但强大之处在于可以模拟private方法,普通方法和final方法。模拟普通方法和final方法的方式与模拟private方法一模一样,现以模拟private方法为例。

例3.2 模拟私有方法(doCallRealMethod方式)

复制代码
@TestpublicvoidtestMockPrivateMethod()throwsException {Class2Mocked obj= mock(Class2Mocked.class);when(obj,"multiply3", 1).thenReturn(4);doCallRealMethod().when(obj).getTripleString(1);String actual= obj.getTripleString(1);assertEquals("4", actual);verifyPrivate(obj).invoke("multiply3", 1); 
}
复制代码

例3.3 模拟私有方法(spy方式)

复制代码
@TestpublicvoidtestMockPrivateMethod2()throwsException {Class2Mocked obj= spy(newClass2Mocked());when(obj,"multiply3", 1).thenReturn(4);String actual= obj.getTripleString(1);assertEquals("4", actual);verifyPrivate(obj).invoke("multiply3", 1); 
}
复制代码

除此之外,PowerMock也可以模拟构造方法,如下所示:

例3.4 模拟构造方法

复制代码
@TestpublicvoidtestStructureWhenPathDoesntExist()throwsException {finalString directoryPath = "mocked path"; File directoryMock= mock(File.class); whenNew(File.class).withArguments(directoryPath).thenReturn(directoryMock); when(directoryMock.exists()).thenReturn(true); File file=newFile(directoryPath);assertTrue(file.exists()); verifyNew(File.class).withArguments(directoryPath); verifyPrivate(directoryMock).invoke("exists");
}
复制代码

4.Jmockit

JMockit 是一个轻量级的mock框架是用以帮助开发人员编写测试程序的一组工具和API,该项目完全基于 Java 5 SE 的 java.lang.instrument 包开发,内部使用ASM 库来修改Java的Bytecode。

Jmockit功能和PowerMock类似,某些功能甚至更为强大,但个人感觉其代码的可读性并不强。

Jmockit可以在https://code.google.com/p/jmockit/上下载,使用maven的话添加如下依赖即可:

复制代码
<dependency><groupId>com.googlecode.jmockit</groupId><artifactId>jmockit</artifactId><version>1.0</version><scope>test</scope></dependency>
复制代码

Jmockit也可以分类为非局部模拟与局部模拟,区分在于Expectations块是否有参数,有参数的是局部模拟,反之是非局部模拟。而Expectations块一般由Expectations类和NonStrictExpectations类定义。用Expectations类定义的,则mock对象在运行时只能按照 Expectations块中定义的顺序依次调用方法,不能多调用也不能少调用,所以可以省略掉Verifications块;而用NonStrictExpectations类定义的,则没有这些限制,所以如果需要验证,则要添加Verifications块。



查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 零基础学习Java,毕业后好找工作吗?

    现在学习Java编程的人不断的增加,但是关于Java编程语言的学习每个人都有自己不同的方法,有的人选择找专业的Java培训班学习,有的人找书籍或者是Java编程视频学习,还有一些人是选择自学Java编程技术,那么零基础学习Java真的能顺利高薪就业吗? 如今互联网行业现在仍然属于非…...

    2024/4/18 18:44:46
  2. AXIS 开发讲解

    http://www.cnblogs.com/mingzi/archive/2009/03/09/1406839.html...

    2024/5/2 0:04:58
  3. 京东抢购Python脚本

    京东购物车抢购商品Python代码1.准备工作2.代码 1.准备工作 环境要求: Python3.8.1;Firefox浏览器 插件安装: 1.安装Python相关库(在Windows的cmd里面安装)pip install seleniumpip install datetime2.安装Firefox浏览器驱动:GeckoDriver提取码:e4tv(确保电脑已经有Fir…...

    2024/5/2 1:34:11
  4. 蒙特卡洛方法(Monte Carlo method,也有翻译成“蒙特卡罗方法”)

    蒙特卡洛方法(Monte Carlo method,也有翻译成“蒙特卡罗方法”)是以概率和统计的理论、方法为基础的一种数值计算方法,将所求解的问题同一定的概率模型相联系,用计算机实现统计模拟或抽样,以获得问题的近似解,故又称随机抽样法或统计试验法。上述就是蒙特卡洛方法的基本…...

    2024/5/2 3:57:40
  5. 手淘 x-sign的签名算法和api接口。已带 x-mini-wua

    手淘版的x-sgin的算法接口,终于实现了 手淘xsign的协议算法,带最新 x-mini-wua 更新时间:2020年4月20日,*大家都知道,有时候PC和WAP版的协议根本满足不了业务场景的需求,但是手淘可以满足,但是手淘最大的难度就是X-sign,可以说是万事俱备只欠X-sign,因为公司安排给我的…...

    2024/4/12 16:50:35
  6. 编程实践笔记{Java 线程 并发处理 Webservice}(转)

    http://www.cnblogs.com/mingzi/archive/2009/03/09/1406694.html1, 保证线程安全的三种方法: a, 不要跨线程访问共享变量 b, 使共享变量是final类型的 c, 将共享变量的操作加上同步 2, 一开始就将类设计成线程安全的, 比在后期重新修复它,更容易. 3, 编写多线程程序,…...

    2024/4/20 2:41:24
  7. vs单元测试

    VS2008本身集成有单元测试工具,我们可以拿来用一下,首先在创建测试的方法上右键,选择创建单元测试,如下图示:在弹出的对话框中,选择要测试的方法,如下图示:单击OK按钮,即可创建一个测试工程,工程创建好后,会看到如下代码:/// <summary>///A test for Add///&…...

    2024/5/2 3:02:31
  8. 我理解的马尔科夫链蒙特卡洛(MCMC,Markov Chain Monte Carlo)

    本文是From Scratch: Bayesian Inference, Markov Chain Monte Carlo and Metropolis Hastings, in python的阅读笔记马尔科夫链蒙特卡洛(MCMC, Markov Chain Monte Carlo)的定义是:通过在概率分布中进行采样,估计给定观测数据下模型的参数。(MCMC is a class of techniqu…...

    2024/5/1 21:29:25
  9. Java学习书籍整理

    不知不觉中,做Java开发已经四年了,趁着现在换了工作,还算比较闲,就整理一下自己学习的一些知识。在学习过程中,我喜欢找的一些电子书来系统化的学习,多数时候我都只是做一个大概的了解,没有深入学习,基本就是看下目录,看下前几章的内容,深入的只会在实际用的时候才去…...

    2024/5/2 0:36:36
  10. Java——给五子棋添加时间进度条(多线程)

    在实现这个功能中我用到了swing中的一个ProgressBar类,这是界面的进度条组件,此外因为我是在五子棋运行的同时有计时的功能,所以此外还需要使用到多线程。 我想要达到的效果是给黑白两方固定总时间十分钟,也就是说到黑方落子时计时,落完子后时间暂停,到白方的时间落子同样…...

    2024/4/14 17:56:04
  11. Spring Boot之单元测试用例总结

    关于单元测试 单元测试其核心诉求是将一个复杂的程序进行拆解,分解为若干个独立的可控子模块来实现测试的可控性。在本节将对Spring Boot中可用的单元测试注解以及用法做一个小结。 通用注解@RunWith(SpringRunner.class/SpringJUnit4ClassRunner.class) 使用在测试用例类之上…...

    2024/5/2 0:35:53
  12. 马尔可夫链蒙特卡罗法(Markov Chain Monte Carlo,MCMC)

    文章目录1. 蒙特卡罗法2. 马尔可夫链3. 马尔可夫链蒙特卡罗法4. Metropolis-Hastings 算法5. 吉布斯抽样 蒙特卡罗法(Monte Carlo method),也称为统计模拟方法(statistical simulation method),是通过从概率模型的随机抽样进行近似数值计算的方法 马尔可夫链蒙特卡罗法(…...

    2024/4/17 22:05:36
  13. Swing进度条样例

    完整版见https://jadyer.github.io/2013/04/24/java-swing-progressbar/package com.jadyer.demo;import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;import javax.swing.JFrame; import ja…...

    2024/4/12 9:04:58
  14. Chrome代理设置

    1,右上按钮。650) this.width=650;" src="http://s5.51cto.com/wyfs02/M01/7C/EF/wKioL1bc8ZrRL-VIAAAnJ_XglB0387.jpg" title="捕获.JPG" alt="wKioL1bc8ZrRL-VIAAAnJ_XglB0387.jpg" />2,【设置】3,【显示高级设置】4,【更改代理服…...

    2024/4/9 18:23:10
  15. javascript代码规范问题

    javascript代码规范问题是初期的前端工程师最容易忽视的一个问题,那我们又如何来巧妙的避免这些问题?这這里分享一点小经验 变量和函数的命名规则空格,缩进,注释的使用规则。其他的规范1.变量和函数的命名规则這个问题在新手中是最常看见的,如以下的:中文式命名var mingz…...

    2024/4/19 7:34:55
  16. java自学者的福音

    谈到自学对于程序员来说并不陌生,自从我们离开校门就开始了自学之路。这一路上绝大部分都是百步止于九十步,不是因为他们不够坚持,而是没有找到学习的方法和资源。当然这一路上我也走得很辛苦,刚毕业后自学让我很迷茫很累,面对浩如烟海的学习资料无法选择,如果 一一过目筛…...

    2024/4/9 18:23:07
  17. Android Studio中单元测试某个类中的一个方法

    我们在使用Android Studio工具进行开发的时候,有时候会单独测试一个类中的一个方法,由于去运行整个项目会消耗的时间比较多,我们只想独立的测试这个方法,那么我们在AS中应该怎么做呢?大致在网上搜了一下,基本上全都是采用类似断言之类的。在AS中我们新建的项目,里面默认…...

    2024/4/19 12:30:05
  18. java web带进度条的大文件上传

    解决方案 方案名称:带进度条的大文件上传 方案时间:2012-08-16 编写人员:yummy 开发环境:windowsXP+jdk1.6(注:jdk1.5编译不稳定,有问题!) 方案资料:解决这种大文件上传不太可能用web上传的方式,只有自己开发插件或是当门客户端上传,或者用现有的ftp等。 1)开发…...

    2024/4/12 9:36:30
  19. 编码提取以及Base64编码转换工具

    前段时间经常用到需要提取汉子的UTF-16、BIG5等编码,搜索了一番实在是没有找到相应的工具,此次采用QT编写了个简单的工具吧,以便以后所需,希望对有需要的朋友有帮助,本人菜鸟一枚,如有错误请指正! 下载地址:点击打开链接...

    2024/4/19 15:20:21
  20. JUnit 单元测试几个方法的用法注解

    @Test: 将一个 普通的方法修饰成为一个测试方法 @Test(timeout = 3000) 1、终止死循环,当达到设定的值,结束循环@Test(timeout = 2000)public void TestWhile(){ // try { // Thread.sleep(2000); // } catch (InterruptedException e) { // …...

    2024/4/12 13:06:15

最新文章

  1. border-image-slice详细说明

    上一篇文章我们介绍了 border-image的用法&#xff0c;其中border-image-source、border-image-width、 border-image-outset都比较简单好理解&#xff0c;这边文章我们重点学一下border-image-slice 属性&#xff0c;它用于定义边框图像如何被切割并应用到元素的边框上。这个属…...

    2024/5/2 4:07:35
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 设计模式9--单例模式

    定义 案例一 案例二 优缺点...

    2024/4/30 15:43:48
  4. leetcode90. 子集 II

    去重逻辑&#xff1a; 关键是画出递归树&#xff01;当我们即将进入第二个2的递归的时候&#xff0c;发现isVisit数组是100&#xff0c;也就是说这俩重复的数是False&#xff0c;并且这俩在nums值相同&#xff0c;所以写出去重逻辑&#xff01; class Solution { public:vector…...

    2024/5/1 0:34:30
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/1 17:30:59
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/30 18:14:14
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/29 2:29:43
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/30 18:21:48
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/30 9:43:09
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/29 20:46:55
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/30 22:21:04
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/1 4:32:01
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/30 9:42:22
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/30 9:43:22
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/30 9:42:49
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57