前端测试框架浅试
前端测试框架浅试最近在对前端做Unit Test,用到一些测试框架,这里做一些简单的记录。
主要做的事情是针对一个React-hook和一些组件进行了测试,使用的是vitest,并且把原来的一些jest的测试迁移到了vitest上,并且删掉了jest的依赖。
vitest & jest
jest: https://jestjs.io/zh-Hans/
vitest: https://cn.vitest.dev/
vitest比较轻量级,基于vite驱动,如果使用了vite,vitest是个很好的选择。
vitest的速度比jest快很多,但是生态比起jest略逊一筹。
vitest和jest的api都是兼容的,vitest的文档目前还比较简单,如果对某些api有疑问,可以参考jest。
describe和it
12345678import { describe, expect, it } from 'vitest';describe('describe1', () => { describ ...
Ubuntu使用Docker安装Mysql
一个自由的MySQL用来平时测试各种东西还是很方便的,好几次在parallels desktop上的Ubuntu装都失败了,这次用别的虚拟机试了一下就成了,感觉很可能是虚拟机镜像的问题。
一个新的Ubuntu虚拟机,先安装docker,参考https://developer.aliyun.com/article/1323800,https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
12345678910111213141516171819202122# apt预备sudo apt updatesudo apt upgrade# 卸载旧的sudo apt-get remove docker docker-engine docker.io containerd runc# 证书sudo apt-get install ca-certificates curl gnupg lsb-releasecurl -fsSL http://mirrors.aliyun.com/docker-ce/li ...
数据仓库数据库部署
最近有一门课需要使用到python的flask框架,并对mysql关系型数据库、neo4j图数据库和hadoop分布式数据库进行查询,在这里作一些记录和总结。
mysql
安装mysql
自从大二用了docker在服务器上安装软件后,变得一发不可收拾(docker实在是太舒服了)。我们的mysql部署也采用docker,mysql的镜像十分之多,找个star量高的pull一下,然后安装到服务器上即可,十分简单。
导入数据
比较麻烦的是将数据导入到mysql,我们使用JetBrain的datagrip进行远程连接,然后导入数据。在上一篇blog描述了爬虫+数据处理的过程,最后得到的是csv文件格式的数据。因此这里也是将csv导入到mysql之中,具体的操作可以参考我项目的组长Baokker,导入成功之后,就可以直接导出.sql脚本进行数据迁移啦。
mysql安全
我们显然不能把数据都放在root账号,mysql支持账号和ip绑定,只允许该账号在指定的某个ip登录。虽然这样很安全,但是这样并不方便我们开发的时候进行debug。由于我们开发初期设置了123456这样的简单密码,导致被 ...
Vue基础配置
配置Vue3.0+element-plus+axios
新建Vue项目
1vue create [options] <app-name>
选择Manually select features,记得把路由勾选上。
设置ElementPlus
1npm install element-plus
然后在main.js中把相关的组件引入,即
12import ElementPlus from 'element-plus'import 'element-plus/dist/index.css'
并让创建的app使用该组件,即app.use(ElementPlus),同时可以在vscode中使用element-ui插件,以生成自动提示
设置axios
12npm install axiosnpm install vue-axios
同样在main.js中把相关的组件引入,即
12import VueAxios from 'vue-axios'import axios from 'axios' ...
Amazon电影数据处理
序言最近学校有一门课,需要爬取Amazon的电影数据并作清洗和整理,这里简要记录一些思路和困难。
数据爬取
准备工作
数据来源是一个包含了7911684个用户评价的txt文档,这里是下载链接。下载完解压后是一个9G左右的movies.txt文档,下面是一条用户评价的示例:
product/productId: B00006HAXW
review/userId: A1RSDE90N6RSZF
review/profileName: Joseph M. Kotow
review/helpfulness: 9/9
review/score: 5.0
review/time: 1042502400
review/summary: Pittsburgh - Home of the OLDIES review/text: I have all of the doo wop DVD’s and this one is as good or better than the 1st ones. Reme ...
苹果Object-Capture使用
序言移动应用创新赛马上决赛了,我们队伍还在为模型的生成而苦恼,在集训时有老师建议我们使用Object-Capture技术,通过拍照来生成模型,于是我去调研并切实地试了一下这个技术。
调研与使用截止目前而言(2022.8月),该技术只支持测试版的使用,按照官方提供的操作流程,需要下载并安装macOS Monterey beta和Xcode 13 beta,这两个东西全部安装完毕后大约会占去电脑100G左右,并且在使用模拟器Simulator-Beta时,macbook会有明显的cpu使用率过高和发烫(我才买半年的macbook啥时候遭过这个罪)
如果只是想借助该工具生成模型,那大可不必去阅读文档和源码,更不用自己去用PhotogrammetrySession这个类去写一个Command-Line App,只需要使用官方提供的这个命令行工具(下载链接),打开之后在本机上运行。如果你的macbook能够Build Successfully,就会生成Products目录下的HelloPhotoframmetry这个Unix可执行文件,如下图所示,
而后点击Show in Finder,并在 ...
青岛游记
写在前头第一次写游记,因此流水账警告,博客里也不会放置人物相关图片,一些风景照随意而拍供大家观赏。
一些流水账的记录起飞前在机场差点把身份证弄丢了……登机时看了眼东西发现身份证不见了,吓了一激灵立马返回找,还好我运气不错,在之前吃午饭的和府捞面找到了……要是真丢了那可太蠢了……
到达民宿在机场被“黑车”拉客了,我们从150元还价到135元(据后来的董先生所言,他网约车去民宿需要180多块钱,一不小心又成老怨种了)
咱这个民宿还是挺可以的,这里附上几个图看一下。
第一晚董先生从西安赶来,是7点多到的,我和董先生去吃了个肯德基,就近找了家台球店,并被董先生爆锤了5把……9点多我们接到了方先生。终于,五人集聚,我们的旅途正式开始啦!
第一天:崂山仰口区+万达影院第一天是爬山之行。崂山有多个入口,我们选择了南线,这是比较轻松的游览线路之一。我们坐了索道缆车前往半山腰,然后爬山前往山顶。
爬山过程中我们穿过了觅天洞,崎岖的山路和狭窄的通道,还是挺难爬的。阳光很烈,在觅天洞爬了十几分钟算是比较凉快的了。顺便附上一张山顶的照片,证明一下我们曾经来过这里。
中午直接吃了大海鲜,但是有海鲜过敏不太 ...
数据库课设
背景概述背景数据库可谓计算机专业必修的一门课程,为了达到实践效果,推出这么一门实践设计的课程项目,涉及到前端、后端、数据库,以及它们之间的交互技术难题。
这些大多都需要项目成员自行调研,因此本项目是有一定工程量和难度的。值得庆幸的是,我的队友们都非常负责认真,也有很多大佬进行各种技术难题的突破,项目开展至今,是较为顺利的。
如今开发的第一大阶段即将过去,我试图整理一下本项目从开始到现在的各种技术成果,仅供参考。
由于本人进行后端开发,因此后端的技术问题覆盖可能更广一些。
技术分析
首先得有一台服务器,腾讯云或阿里云都可以,我们组采用腾讯云的一个2核2G的linux云服务器,使用新人优惠购买一年有效期可以将价格控制在100以内。
需要注意的是,linux的操作系统也存在不同的发行版,如Centos、Ubuntu、AliCloud等等。不同的类别会内置一些不同的安装工具包,如yum、apt、wget等等。
由于腾和阿里打折优惠的力度可能不同或时间上错开,可以博观而约取,选个最便宜的。
数据库部署
数据库版本采用Oracle12c,使用Docker部署
首先在服务器上安装好docker ...
移动应用创新赛有感
前言6.30期末考试周结束,还想放松几天呢,没想到移动应用创新赛的复赛就要ddl了,于是秉着一股气又肝了好几天,(既然7.8就已经结束了为什么我现在才发这篇博客呢,因为今天才搭好),趁着记忆还深刻,在这里写下我对Xcode开发和SwiftUI的相关知识和理解,因为我下学期还会选修相关内容,以及整个比赛的一些感想吧。这是比赛的代码
初赛篇时间线
1.21~2.21:寒假学习IOS开发相关知识
2.21~3.21:确定选题,技术调研
3月底:任务分配,确定方向
4月:每周例会,成果交流(文档撰写、背景调研、技术调研、原型设计等)
5.14:初赛文档提交
6.17前:页面代码基本完成,校内移动竞教课程答辩。
IOS开发学习由于主办方的要求是最终能够在IOS平台运行,因此基本就是运用Xcode进行苹果开发,所以MacBook是必不可少的,在Xcode中新建IOS平台的App即可。当然也可以对其他一些Application类型进行了解,如Game类型会创建SceneKit的demo、AugumentedRealityApp类型会创建AR的demo。
苹果的开发体系有Swift和Object ...
我的个人博客诞生啦
前言曾听闻前辈所言,作为一名程序员一定要多写博客,既能加深自己的理解,方便日后再次使用,也可能给别人带来帮助。我不奢求给别人带来什么帮助,只想为自己即将走过半程的本科阶段最后能留下些值得回味的东西。从小白一路走来,算是浅浅入了程序员的门,也逐渐开始写一些小项目。在学习技术的过程中,很多知识都需要依靠自学。我在这里将自己走过的路记录下来、分享出来,若能被有缘人看到并提供了帮助,这是很幸福的事情。另一方面,看到身边的许多人都拥有自己的博客,也算是随了一个潮流。
我并不是一个勤于记录的人,很可能一段时间后就停止记录和维护了,不过还是希望能一路坚持下去吧。平时在学业方面的压力还是有的,也不一定能抽出很多时间来记录,像现在这样有一大段空闲时间的机会很难得,也不知道下一次是什么时候了,所以,且写且珍惜吧。
博客的建立建这篇博客并没有花我太多的时间,一方面我已经装好node.js,并且在macOS系统中使用brew安装hexo也非常方便,另一方面我的github也已绑定ssh密钥,使用github page很方便。下面大概说明在macOS系统下建博的步骤:
安装node.js
1.1.官网安装包: ...











