首页 文章 精选 留言 我的

精选列表

搜索[压测工具],共10011篇文章
优秀的个人博客,低调大师

大模型写代码以后,测试到底要测什么?

摘要: 如果你刚开始接触大模型测评,AI 生成代码其实是一个很适合入门的场景。过去我们习惯看“代码能不能跑、测试能不能过”,但到了 Coding Agent 阶段,这两个标准已经不够了。真正需要验证的,还包括功能是否符合真实需求、AI 写出的测试是否可信、代码有没有超范围修改,以及最终产物是否符合项目本身的工程规范。

优秀的个人博客,低调大师

亲测Mac和Linux安装Tomcat,不服来战

一、今天需要使用到本地的Tomcat,结果在网上找了下教程,都是假的,都有问题,都没有经过测试,不负责任啊啊啊,坑爹坑爹。 Mac正确安装Tomcat的姿势 首先访问一下Tomcat的官网: Tomcat官网 想下载什么版本就点击什么版本 二、下面以Tomcat9为例,Mac和Linux的一定要下载tar.gz文件,其余的都有问题 三、解压后,重命名文件夹 四、通过终端进入到Tomcat的bin目录下 ~/Develop/Tomcat/tomcat9/bin ⌚ 19:16:26 $ pwd /Users/wangdong/Develop/Tomcat/tomcat9/bin ~/Develop/Tomcat/tomcat9/bin ⌚ 19:16:29 $ ls bootstrap.jar setclasspath.bat catalina-tasks.xml setclasspath.sh catalina.bat shutdown.bat catalina.sh shutdown.sh ciphers.bat startup.bat ciphers.sh startup.sh commons-daemon-native.tar.gz tomcat-juli.jar commons-daemon.jar tomcat-native.tar.gz configtest.bat tool-wrapper.bat configtest.sh tool-wrapper.sh daemon.sh version.bat digest.bat version.sh digest.sh ~/Develop/Tomcat/tomcat9/bin ⌚ 19:16:31 $ 五、启动Tomcat ./startup.sh ~/Develop/Tomcat/tomcat9/bin ⌚ 19:16:31 $ ./startup.sh Using CATALINA_BASE: /Users/wangdong/Develop/Tomcat/tomcat9 Using CATALINA_HOME: /Users/wangdong/Develop/Tomcat/tomcat9 Using CATALINA_TMPDIR: /Users/wangdong/Develop/Tomcat/tomcat9/temp Using JRE_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home Using CLASSPATH: /Users/wangdong/Develop/Tomcat/tomcat9/bin/bootstrap.jar:/Users/wangdong/Develop/Tomcat/tomcat9/bin/tomcat-juli.jar Tomcat started. ~/Develop/Tomcat/tomcat9/bin ⌚ 19:17:23 $ 六、访问http://localhost:8080/ 出现上述的界面,就证明成功了。 七、关闭Tomcat ./shutdown.sh ~/Develop/Tomcat/tomcat9/bin ⌚ 19:17:23 $ ./shutdown.sh Using CATALINA_BASE: /Users/wangdong/Develop/Tomcat/tomcat9 Using CATALINA_HOME: /Users/wangdong/Develop/Tomcat/tomcat9 Using CATALINA_TMPDIR: /Users/wangdong/Develop/Tomcat/tomcat9/temp Using JRE_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home Using CLASSPATH: /Users/wangdong/Develop/Tomcat/tomcat9/bin/bootstrap.jar:/Users/wangdong/Develop/Tomcat/tomcat9/bin/tomcat-juli.jar

优秀的个人博客,低调大师

java文字识别技术(亲测,识别率很高)

java文字识别程序的关键是寻找一个可以调用的OCR引擎。tesseract-ocr就是一个这样的OCR引擎,在1985年到1995年由HP实验室开发,现在在Google。tesseract-ocr 3.0发布,支持中文。不过tesseract-ocr 3.0不是图形化界面的客户端,别人写的FreeOCR图形化客户端还不支持导入新的 3.0 traineddata。但这标志着,现在有自由的中文OCR软件了。 java中使用tesseract-ocr3.01的步骤如下: 1.下载安装tesseract-ocr-setup-3.01-1.exe(3.0以上版本才增加了中文识别) 2.在安装向导中可以选择需要下载的语言包。 3.到网上搜索下载java图形处理所需的2个包:jai_imageio-1.1-alpha.jar,swingx-1.6.1.jar 4.java程序清单: ImageIOHelper 类: importjava.awt.image.BufferedImage; importjava.io.File; importjava.io.IOException; importjava.util.Iterator; importjava.util.Locale; importjavax.imageio.IIOImage; importjavax.imageio.ImageIO; importjavax.imageio.ImageReader; importjavax.imageio.ImageWriteParam; importjavax.imageio.ImageWriter; importjavax.imageio.metadata.IIOMetadata; importjavax.imageio.stream.ImageInputStream; importjavax.imageio.stream.ImageOutputStream; importcom.sun.media.imageio.plugins.tiff.TIFFImageWriteParam; publicclassImageIOHelper{ publicstaticFilecreateImage(FileimageFile,StringimageFormat){ FiletempFile=null; try{ Iteratorreaders=ImageIO.getImageReadersByFormatName(imageFormat); ImageReaderreader=readers.next(); ImageInputStreamiis=ImageIO.createImageInputStream(imageFile); reader.setInput(iis); //Readthestreammetadata IIOMetadatastreamMetadata=reader.getStreamMetadata(); //SetupthewriteParam TIFFImageWriteParamtiffWriteParam=newTIFFImageWriteParam(Locale.CHINESE); tiffWriteParam.setCompressionMode(ImageWriteParam.MODE_DISABLED); //Gettifwriterandsetoutputtofile Iteratorwriters=ImageIO.getImageWritersByFormatName("tiff"); ImageWriterwriter=writers.next(); BufferedImagebi=reader.read(0); IIOImageimage=newIIOImage(bi,null,reader.getImageMetadata(0)); tempFile=tempImageFile(imageFile); ImageOutputStreamios=ImageIO.createImageOutputStream(tempFile); writer.setOutput(ios); writer.write(streamMetadata,image,tiffWriteParam); ios.close(); writer.dispose(); reader.dispose(); }catch(IOExceptione){ e.printStackTrace(); } returntempFile; } privatestaticFiletempImageFile(FileimageFile){ Stringpath=imageFile.getPath(); StringBufferstrB=newStringBuffer(path); strB.insert(path.lastIndexOf('.'),0); returnnewFile(strB.toString().replaceFirst("(?<=//.)(//w+)$","tif")); } } OCR 类: packagecom.hhp.util; importjava.io.BufferedReader; importjava.io.File; importjava.io.FileInputStream; importjava.io.InputStreamReader; importjava.util.ArrayList; importjava.util.List; importorg.jdesktop.swingx.util.OS; publicclassOCR{ privatefinalStringLANG_OPTION="-l";//英文字母小写l,并非数字1 privatefinalStringEOL=System.getProperty("line.separator"); privateStringtessPath="C://ProgramFiles(x86)//Tesseract-OCR"; //privateStringtessPath=newFile("tesseract").getAbsolutePath(); publicStringrecognizeText(FileimageFile,StringimageFormat)throwsException{ FiletempImage=ImageIOHelper.createImage(imageFile,imageFormat); FileoutputFile=newFile(imageFile.getParentFile(),"output"); StringBufferstrB=newStringBuffer(); Listcmd=newArrayList(); if(OS.isWindowsXP()){ cmd.add(tessPath+"//tesseract"); }elseif(OS.isLinux()){ cmd.add("tesseract"); }else{ cmd.add(tessPath+"//tesseract"); } cmd.add(""); cmd.add(outputFile.getName()); cmd.add(LANG_OPTION); cmd.add("chi_sim"); //cmd.add("eng"); ProcessBuilderpb=newProcessBuilder(); pb.directory(imageFile.getParentFile()); cmd.set(1,tempImage.getName()); pb.command(cmd); pb.redirectErrorStream(true); Processprocess=pb.start(); //tesseract.exe1.jpg1-lchi_sim intw=process.waitFor(); //删除临时正在工作文件 tempImage.delete(); if(w==0){ BufferedReaderin=newBufferedReader(newInputStreamReader(newFileInputStream(outputFile.getAbsolutePath()+".txt"),"UTF-8")); Stringstr; while((str=in.readLine())!=null){ strB.append(str).append(EOL); } in.close(); }else{ Stringmsg; switch(w){ case1: msg="Errorsaccessingfiles.Theremaybespacesinyourimage'sfilename."; break; case29: msg="Cannotrecongnizetheimageoritsselectedregion."; break; case31: msg="Unsupportedimageformat."; break; default: msg="Errorsoccurred."; } tempImage.delete(); thrownewRuntimeException(msg); } newFile(outputFile.getAbsolutePath()+".txt").delete(); returnstrB.toString(); } } 测试类TestOCR : importjava.io.File; importjava.io.IOException; importcom.hhp.util.OCR; publicclassOcrTest{ publicstaticvoidmain(String[]args){ Stringpath="C://temp//OCRcode//4.png"; System.out.println("ORCTestBegin......"); try{ StringvalCode=newOCR().recognizeText(newFile(path),"png"); System.out.println(valCode); }catch(IOExceptione){ e.printStackTrace(); }catch(Exceptione){ e.printStackTrace(); } System.out.println("ORCTestEnd......"); } } 经过测试,tesseract-ocr 3.01的文字识别率很高,对于网站中常见的验证码识别率也很高。 原文地址http://www.bieryun.com/558.html

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册