0%

  第一次听到探索性测试这个词是去年的10月份。一个微博上的朋友写了一篇关于探索式测试的blog,之后断断续续的阅读了不少相关资料,参加了数场相关讨论,但是还是没有得到一个系统的理解。8月29日晚上有幸聆听了测试顶级专家Micheal Bolton(不是唱歌的那个,是做测试的)关于探索性测试的演讲,解决了数个困扰我很久疑惑。我终于得以把这些知识理清,下面我会把我所理解的探索性测试跟大家做一个分享。

  探索性测试的历史和主旨

阅读全文 »

同性交友软件Github :-)

作为开发者社区GitHub有何特别之处?
眼下软件对各行各业的重要性都在提升,而合作的软件开发和代码分享也有着越来越大的需求。GitHub的成功在很大程度上基于软件开发的开源模式,这种模式意味着开发者可以自由地修改及发布代码。开源软件正在被越来越多企业使用,这帮助企业节约授权费用和开发成本。而通过在GitHub上开展开源项目,以及为开源项目贡献代码,企业也可以更好地吸引开发者,完成招聘。GitHub有何特别之处,具体来说有以下几方面。

阅读全文 »

四、2024年2月更换新mac airbook 安装的记录

新版本的一些改变,需求修改的部分

  1. # - 之前必须有空行(不是很确定)
  2. img 不能有空的 “ ”,需要替换。
  3. - 换行不起作用 需要在前面加Tab;(不是很 确定)。
  4. 文章中yaml部分的Title 和文件名必须一致。
  5. > 符号前面和后面要空行。
  6. 代码块的前后标签都需要单独一行。
  7. 行内公式的用法,之前和独行公式混了,需要重新修改。
  8. ` 必须用\ 转义
  9. 多个-之间不要有空行,否则显示出来就是每个-之间都空一行。

换行的问题

参考: hexo 回车换行无效?

markdown的换行规范:

段落与换行

  1. 段落的前后必须是空行:
    空行指的是行内什么都没有,或者只有空白符(空格或制表符)
    相邻两行文本,如果中间没有空行 会显示在一行中(换行符被转换为空格).
  2. 如果需要在段落内加入换行(<br>):
    可以在前一行的末尾加入至少两个空格.
    然后换行写其它的文字.
  3. Markdown 中的多数区块都需要在两个空行之间。

markdown的规范是软回车,键盘上的回车键是硬回车。一般回车是代表换段。在markdown中,要创建段落,请使用空白行将一行或多行文本进行分隔。

问题:

mac上,之前使用hexo(19年配置的)+next皮肤,回车键就是换行符号了,用起来很丝滑。
最近hexo频繁报错,我就重新装了个最新版本,必须要加,极为难用,而且之前的也要一个一个改正,把 ,十分痛苦。
问问各位大佬,如何改为之前那种使用。

回答:

终于弄好了,尝试更改了marked,marked-i,pand.....等渲染,mathjax数学公式,捣鼓一天,全都不work,有冲突。最后将以前的package.json中的所有依赖重新安装,就和以前一样了。主要是 mathjax 的锅,加了mathjax:true后就没法自动换行了。所以建议大家图省事的话也是找一个没问题的package.json,全部无脑照着安装就行。

个人搞了好久,使用原先的kramed渲染器,回车换行倒是可以了,但数学公式很多地方显示不正常。并且kramed已经停止更新好多年了,所以决定不再用。
markdown-it支持KaTex,但对MathJax的支持不好,所以也没用。
后来还是保留了pandoc的渲染器。即使需要批量修改原先的md文件,特别是段内换行的问题比较突出。

发现在pakage.json中,renderer部分就保留了:

"hexo-renderer-ejs": "^2.0.0",
"hexo-renderer-pandoc": "^0.4.0",
"hexo-renderer-stylus": "^3.0.1",

其实就是使用了next的mathjax引擎,然后安装hexo的pandoc渲染器。

pandoc语法的几个常见注意事项:

  • 换行前加两个空格。
  • 图片使用绝对路径。
  • 标题前两个回车。
  • 把本地图片地址变为绝对路径。

使用 pandoc 渲染器 切换 hexo-renderer-pandoc 后,公式倒是能正常显示,但是图片,文本格式需要按 pandoc 的 markdown 格式修改,因此,做了批量调整:

pandoc导致历史md文件格式问题在sublime text中调整方法:

有时,我们可能需要将文件中的换行符替换为其他字符,比如英文逗号、分号等。
Sublime Text 使用正则表达式来替换文本内容非常方便。
举例,一个回车键替换成 空格+空格+回车,以实现段内换行的效果。
你可以通过以下步骤来替换:
1. 打开 Sublime Text 编辑器
2. 打开要替换的文件
3. 按下快捷键「Ctrl + H」(「Cmd + Shift + H」在 Mac 上)
4. 在「Find What」输入框中输入需要替换的字符串:\n
5. 在「Replace With」输入框中输入替换后的字符串:空格+空格+\n
6. 选择「Regular Expression」复选框 (sublime 里面的 .* 那个按钮)
7. 点击「Replace」或「Replace All」按钮进行替换
如果你需要使用正则表达式语法,例如匹配数字、单词等,请参考其它资源了解正则表达式语法。
注意事项,替换的时候因为yaml部分也增加了两个空格,导致出错,需要把yaml那些多出来的空格删除。

软件升级最大的问题,规范变了,导致历史的文章需要根据新的规范做修改。

安装完成后执行 hexo clean. 命令来清空以前生成的 HTML 文件,然后重新 hexo g -d 发布。

关于markdown换行的一篇好文章。 markdown段内换行的说明

渲染器的问题

Hexo 作为一个优秀的 Markdown 博客框架,自然也诞生了很多适用的 Markdown 渲染器,这里对比分析一下 Hexo 下几种常用的 Markdown 渲染器: hexo-renderer-marked , hexo-renderer-kramed , hexo-renderer-pandoc , hexo-renderer-markdown-it , hexo-renderer-markdown-it-plus 。

Next 提供了两个渲染引擎来显示数学方程: MathJax 和 KaTeX。要使用这个特性,您只需要选择一个渲染引擎并打开它的 enable(位于home config file)。 然后你需要安装相应的 Hexo 渲染器来完全支持数学方程式的显示。

ssh key的问题

git config --global user.name “hongyitong”
git config --global user.email “hogyuanjiao@hotmail.com”
ssh-keygen -t rsa -b 4096 -C “hogyuanjiao@hotmail.com”

  1. 查看本地是否存在SSH密钥
    命令:ls -al ~/.ssh
    如果在输出的文件列表中发现id_rsa和id_rsa.pub的存在,证明本地已经存在SSH密钥,请执行第3步

  2. 查看SSH公钥
    命令:cat /Users/电脑用户名/.ssh/id_rsa.pub
    复制打印出来的信息,在GitLab或者GitHub的SSH Keys中进行相应设置即可

  3. 警告的信息
    > You've successfully authenticated, but GitHub does not provide shell access.
    这句话其实一直存在,它只是想告诉你,github 不允许 shell 交互。仅此而已。

mac技巧

Mac用户注意了,要使用管理员权限,首先:“sudo -s”,回车,输入密码,再回车,然后:“npm install -g hexo-cli”,回车,等待下载安装即可!

参考的资料

Mac OS环境下使用Hexo搭建个人博客

三、多机搭建(更换电脑搭建)

其实简单说,就是四个部分:
1、备份
备份source文件夹(所有的MD文件都在这里);备份站点的_config.yml,主题的的_config.yml;
如果担心,可以把整个hexo目录备份下来;
2、安装
按照指引安装(其实可以按照第一次的安装来处理),只是涉及github 仓库那一部分是不需要了;
3、恢复
1)把source目录恢复覆盖;
2)两个_config.yml的内容,比较,然后把需要的部分copy到新装的文件里面替换对应内容。注意,这里不要用整个文件覆盖的模式,因为可能对应的软件的版本不一致了。
4、安装相关的插件
包括支持数学公式、置顶、搜索等等;

因为之前上传到百度网盘的MD源文件,下载之后的创建日期都变成下载那天的时间,导致之前很多没有定义date时间的都默认成下载的日期了。
花了好长时间把MD文件的date属性都加上了发布的时间。

多机部署参考:
多机更新 Hexo 博客
上文中提到的:先在电脑中的某一位置建立好 your_name.github.io 文件夹,比如 D:_name.github.io;
因为之前习惯取了hexo的名字,其实 hexo目录就是这里所谓的 youre_name.githubo.io文件夹。

一、第一次搭建过程资料

经过几天的努力,终于把个人的博客搭建得差不多了。个人的博客现在存在Github和Coding两个地方,地址分别是:
Github版
Coding版     !Coding版本因为有100M的空间限制,无法发布了!

Coding用不了之后,使用了码云Oschina,具体的设置如下(不过Oschina还有有点不稳定和刷新速度比较慢。):
Oschina版
Oschina免费版限制空间了,因为博客容量太大,无法再从github中pull过来了
码云
搭建个人免费博客:利用Hexo在码云上部署博客

在搭建过程当中,参考了以下的文档,特此记录!
如何利用GitHub Pages和Hexo快速搭建个人博客     (这个博客不知道什么原因,访问不了:()
参考一下以下几个吧:
知行合一 用 Hexo 搭建博客
Hexo+nexT主题搭建个人博客
手把手教你使用Hexo + Github Pages搭建个人独立博客

hexo同时托管到coding.net与github
如何将Hexo Blog同时发布到GitHub跟Coding上
|Hexo优化|如何向google提交sitemap(详细)

设置 Google站点管理工具 的验证字符串,用于提交 sitemap

获取 google site verification code
登录 Google Webmaster Tools,导航到验证方法,并选择 HTML Tag。将会获取到一段代码:

1
<meta name="google-site-verification" content="XXXXXXXXXXXXXXXXXXXXXXX" />

将 content 里面的 XXXXXXXXXXXXXXXXXXXXXXX 复制出来。
设置主题。编辑 站点配置,新增字段 google_site_verification。
google_site_verification: XXXXXXXXXXXXXXXXXXXXXXX

在google加了github的收录,但是在增加百度收录的时候,一直生成不了baidusitemap.xml文件。暂时放弃。(后来重启电脑就自动有了:-()
hexo干货系列:(六)hexo提交搜索引擎(百度+谷歌)

本地预览没问题,deploy后主页显示大面积空白

二、优化过程及问题

!!!!!如果本地预览没问题,部署到github有问题的话,先 hexo clean掉在重新 hexo d -g

1、搜索

因为Swiftype收费了,转向了微搜索:
NexT主题下的两种搜索服务的问题

后来简单点,直接使用了Next主题的本地搜索了,具体见下文!
Hexo博客添加站内搜索
补充一点,还需要修改主题下的_config.yml文件,把enable:false改成true

1
2
3
# Local search
local_search:
enable: true

2、数学公式

如何在Hexo中使用MathJax

3、文章发表时间显示了两遍

文章发表时间显示了两遍

4、Hexo文章置顶

Hexo文章置顶

5、如何链接站内文章

A:next或者hexo,链接站内文章的方法?
B:关于引用站内文章的链接,可以使用以下语法:

1
{% post_link markdown-learning-by-maxiang 点击这里查看这篇文章 %}

markdown-learning-by-maxiang是你的文章名称。如果文章不存在,这段代码将会被直接忽略。
点击这里查看这篇文章是该链接的标题。如果置空,则自动提取文章的标题。
ps:这个功能跟主题无关。

6、git远程库与本地联系报错:fatal: Not a git repository (or any of the parent directories): .git

在github上新建了一个仓库,然后相与本地的仓库联系起来
$ Git remote add origin https://github.com/liona329/learngit.git fatal: Not a git repository (or any of the parent directories): .git
总是报这个错
解决方法:git init
成功

7、github build出错信息会发到注册的邮箱

1
2
3
4
5
6
7
8
9
10
11
12
[hongyitong/hongyitong.github.io] Page build failure
G
GitHub <support@github.com>
今天, 16:12

The page build failed for the `master` branch with the following error:

The tag `fancybox` on line 77 in `themes/landscape/README.md` is not a recognized Liquid tag. For more information, see https://help.github.com/articles/page-build-failed-unknown-tag-error/.

For information on troubleshooting Jekyll see:

https://help.github.com/articles/troubleshooting-jekyll-builds

8、Error: Cannot find module 'hexo-util'

升级NexT主题以后,执行hexo clean,出错:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
✗ hexo clean         
ERROR Script load failed: themes/next/scripts/tags/exturl.js
Error: Cannot find module 'hexo-util'
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Module.require (module.js:353:17)
at require (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/lib/hexo/index.js:213:21)
at /Users/lisanlai/lisanlai.github.io/themes/next/scripts/tags/exturl.js:8:12
at /Users/lisanlai/lisanlai.github.io/node_modules/hexo/lib/hexo/index.js:229:12
at tryCatcher (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:502:31)
at Promise._settlePromise (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:559:18)
at Promise._settlePromise0 (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:604:10)
at Promise._settlePromises (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:683:18)
at Promise._fulfill (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:628:18)
at Promise._resolveCallback (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:423:57)
at Promise._settlePromiseFromHandler (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:514:17)
at Promise._settlePromise (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:559:18)
at Promise._settlePromise0 (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:604:10)
at Promise._settlePromises (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:683:18)
at Promise._fulfill (/Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/promise.js:628:18)
at /Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/bluebird/js/release/nodeback.js:42:21
at /Users/lisanlai/lisanlai.github.io/node_modules/hexo/node_modules/hexo-fs/node_modules/graceful-fs/graceful-fs.js:78:16
at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:380:3)
INFO Deleted database.

解决办法:重新安装hexo-util模块

1
npm install -- save-dev hexo-util

9、HEXO-NexT的Local Search转圈圈的问题

可以在浏览器中输入 博客网址:

1
http://localhost:4000/search.xml 

其中 search.xml是搜索的内容文档,在hexo 对应的pubic目录下。

如果有错,浏览器会报出具体的错误。

可以找到引起错误的md文件,然后在search.xml文档中找到对应的段落,可以使用https://www.xmlvalidation.com/ 来验证对应段落的具体错误原因。
具体的文档可以见:https://guahsu.io/2017/12/Hexo-Next-LocalSearch-cant-work/

10、本地预览没问题deploy后主页显示大面积空白

本地预览没问题,deploy后主页显示大面积空白

11、Hexo 博客无法搜索的终极解决方法

http://www.sqlsec.com/2017/12/hexosearch.html

12、文章添加阅读次数,访问量等

Hexo+Next主题 文章添加阅读次数,访问量等:
https://blog.csdn.net/xr469786706/article/details/78166227
hexo博客解决不蒜子统计无法显示问题:
https://www.jianshu.com/p/fd3accaa2ae0

13、解决MacOS升级后出现xcrun: error: invalid active developer path, missing xcrun的问题

今天升级macOS High Sierra,终端里使用git的时候,弹出一行莫名其妙的错误:

1
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun 

解决方法,重装xcode command line:

1
xcode-select --install 

如果没有解决问题,执行以下命令

1
sudo xcode-select -switch / 

黑格尔说过,人类从历史中得到的教训就是:人类从来不记取历史教训。
比较了好多关于清朝历史方面的书,《正说清朝十二帝》因为丰富的彩色插图吸引了我。书中每个章节根据内容,配有各类的图片,包括人物画像、物品图、景色图、书法图、名画等等。
但可能是正说的缘故,书中文字还是比较晦涩,故事也比较平淡,缺少了《明朝那些事儿》的诙谐、有趣感。
清朝处在一个特殊的时代,中国已经从盛唐时期的万国之国,没落成了落后挨打的一方。
当时,西方主要的国家,英国、法国、德国、美国,都走上了资本主义发展的道路,这些国家对内努力发展工业,提高科学技术,对外进行殖民扩张。近邻日本也实行了明治维新,实现了国家的现代化。而清朝还沉浸在“天朝统御万国”、“天朝物产丰盛,无所不有,原不藉外夷货物,一通有无”的幻境中。在强敌面前,清朝皇帝采取“率祖旧章”、“持盈保泰”的保守态度,导致国家一步步滑向了灭国的境地。

阅读全文 »

浏览器渲染工作原理

How browsers work【中文版】
http://my.oschina.net/anna153/blog/377259
How browsers work
http://taligarsiel.com/Projects/howbrowserswork1.htm
浏览器的渲染原理简介
http://coolshell.cn/articles/9666.html

一本不错的信息处理数学原理科普书。一些复杂的信息问题、工程问题,经作者之手,把背后的数学原理通过简单的形式展示出来,让普通读者明白到了数学解决问题的能力,体会到了数学的美。
这本书,背后也道出了一个道理,那就是基础数学理论研究对计算机科学的发展能起到非常重要的作用。
例如,书中提到,布尔代数,在19世纪布尔提出的80多年时间里,一直默默无闻,在实际生活中也没有起到任何作用。直到1938年香农提出在电路开关中应用布尔代数来处理之后,才开始在数字电路方面得到了广泛应用。

布尔(George Boole) 是十九世纪英国一位小学数学老师。他生前没有人认为他是数学家。布尔在工作之余,喜欢阅读数学论著、思考数学问题。1854 年“思维规律” (An Investigation of the Laws of Thought, on which are founded the Mathematical Theories of Logic and Probabilities)一书,第一次向人们展示了如何用数学的方法解决逻辑问题。

读者也许会问这么简单的理论能解决什么实际问题。布尔同时代的数学家们也有同样的问题。事实上在布尔代数提出后80 多年里,它确实没有什么像样的应用,直到 1938 年香农在他的硕士论文中指出用布尔代数来实现开关电路,才使得布尔代数成为数字电路的基础。所有的数学和逻辑运算,加、减、乘、除、乘方、开方等等,全部 能转换成二值的布尔运算。

不管索引如何复杂,查找的基本操作仍然是布尔运算。布尔运算把逻辑和数学联系起来了。它的最大好处是容易实现,速度快,这对于海量的信息查找是至关重要的。它的不足是只能给出是与否的判断,而不能给出量化的度量。因此,所有搜索引擎在内部检索完毕后,都要对符合要求的网页根据相关性排序,然后才返回给用户。

像作者说的,布尔代数对于数学的意义,等同于量子力学对于物理学的意义,他们将我们对世界的认识从连续状态扩展到了离散的状态。
因为作者是搜索方面的专家,所以,作者对搜索涉及的数学建模、有向图、矩阵、统计、概率、迭代等方面进入了深入浅出的描述。
印象最深刻的是,作者在讨论到比较两个集合的是否一样的时候,提到了各种算法的优劣性。最基本的算法是采用逐个元素的比较,好一点的是排序后再比较。但是作者提出,其实最优的方案的是,采集每个词的信息指纹----数字,然后对这些数字求和比较,就能马上知道两个集合是否有差异了。因为采用的信息指纹是伪随机数,不同信息指纹加减乘除之后相同的概率非常小。信息指纹在判断网页相似性、论文抄袭等方面发挥了重要的作用。
另外说的一点是,因为密码学不是作者的专业,感觉本书在密码学方面讲得不够透。密码方面的知识建议参考(知乎)关于老和尚小和尚讨论密码的问题

阅读全文 »

受不了新浪博客乱七八糟的广告,终于下定决心搭建GitHub个人博客了。GitHub及Hexo的安装,NexT主题配置,Sublime Text编辑器、Mark的使用,一天的努力,终于大功告成。
从今天开始,以后就在这里记录工作心得、生活心得、读书心得,分享亲子时刻。
之前几年记录的博客做了备份,并且还保留在新浪博客上忆桐之家
以后有空再蚂蚁搬家般,把新浪博客迁移过来,目前貌似只能手工处理:-(

阅读全文 »

大概04年左右的时间,当时横下心,把手头所有的关于技术方面的书籍都扔了,包括看了至少3遍的《Thinking in java》。
那时候,自己寻求转型,决定不再走技术路线。
所以,后来看的书慢慢偏向了管理、历史和文化方面。
现在,回过头来看,其实有点矫枉过正。
长时间没有系统的看技术方面的书,导致对新的技术没有一点概念。
所以,最近又慢慢的把技术方面的书捡回来看了,特别是新的技术方面的书,当然,还有需要恶补。不过,现在看书和以前看的类型还是有大的不同。以前看的书偏重于技术细节方面的书,看完是需要实践的。现在看的书侧重于原理,看完需要对某项技术有认识,明白原理,方便做出技术方面的判断。

人的轨迹是一个类似旋转楼梯的圆,从高空俯视下去只有一个圆,但其实每一个相似的原点,都是起点。只要勇敢走下去,我们就像DNA的模型一样,螺旋式上升

这个学期因为搬到了广雅,离单位远,上下班各需要1个小时左右的时间,所以,捡起了之前的Kindle,利用上下班途中的时间拼命看书。
坚持了2个月,发现人特别累,看完书,到单位累;看完书,回到家累。
后来,反思了一下,上下班时间反而是一个好好让自己思考的好时间。这段时间没有人打扰,可以放空自己的思想,可以旁观芸芸众生。
现在,我们缺乏的不是资讯,反而是思考。
当然,因为减少了途中的看书时间,也只能好好利用上班或者在家的空闲时间看书了。

阅读全文 »